%PDF- %PDF-
Server IP : 37.220.80.31 / Your IP : 18.116.36.56 Web Server : Apache/2.4.52 (Ubuntu) System : Linux 3051455-guretool.twc1.net 5.15.0-107-generic #117-Ubuntu SMP Fri Apr 26 12:26:49 UTC 2024 x86_64 User : www-root ( 1010) PHP Version : 7.4.33 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority, MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /var/www/www-root/data/www/dev.artlot24.ru/bitrix/modules/main/lib/phonenumber/ |
Upload File : |
<?php namespace Bitrix\Main\PhoneNumber; /** * Formatter for invalid short numbers, like 32-12-43, just to make them look pretty. * @package Bitrix\Main\PhoneNumber */ class ShortNumberFormatter { protected static $templates = [ 3 => 'x-xx', 4 => 'xx-xx', 5 => 'x-xx-xx', 6 => 'xx-xx-xx', 7 => 'xxx-xx-xx' ]; /** * Pretty prints some invalid short number. * @param PhoneNumber $phoneNumber Phone number. * @return string */ public static function format(PhoneNumber $phoneNumber) { $rawNumber = $phoneNumber->getNationalNumber(); $template = static::$templates[mb_strlen($rawNumber)]; if(!$template) { return $rawNumber; } $pattern = preg_replace("/[^x]/", "", $template); $pattern = str_replace("x", "(\\d)", $pattern); $pattern = "/" . $pattern . "/"; $format = preg_replace_callback( "/x/", function () { static $i = 0; return "$" . ++$i; }, $template ); $result = preg_replace($pattern, $format, $rawNumber); if($phoneNumber->getExtensionSeparator()) { $result .= $phoneNumber->getExtensionSeparator() . " " . $phoneNumber->getExtension(); } return $result; } /** * Return true if the phone number could be formatted using this formatter and false otherwise. * @param PhoneNumber $phoneNumber Phone number. * @return bool */ public static function isApplicable(PhoneNumber $phoneNumber) { if($phoneNumber->isValid() || $phoneNumber->hasPlus()) return false; $rawNumber = $phoneNumber->getNationalNumber(); return preg_match("/^\d{3,7}$/", $rawNumber); } }