在PHP中,将手机号码转换为国际格式的最快方法是:
所以07123456789变为447123456789。
我尝试了几种方法,似乎无法让它发挥作用。
这是当前的脚本:
if(strlen($gsm) > 2) {
if(!substr_compare($gsm, "07", 0, 2, false)) {
unset($gsm);
}
elseif (substr_compare($gsm, "07", 0, 3, true)) {
if(strlen($gsm) == 11) {
return "447" . substr($gsm, 2);
}
}
}
注意:仅当数字与正则表达式匹配时,才会运行此脚本。
答案 0 :(得分:4)
也许是这样的事情?
$intl_number = preg_replace('/^0/','44',$uk_number);
或者如果您特别想要使用英国手机号码:
$intl_number = preg_replace('/^07/','447',$uk_mob_number);
(注意:我假设英国特定,因为你在问题中指定'44')
这确实使用了正则表达式,但执行速度应该非常快,因为它固定在字符串的开头。
答案 1 :(得分:2)
我想到的最快的方式,只要你这个数字符合格式07xxxxxx:
$number = "07123456789";
$number = '44'.substr($number,1);
答案 2 :(得分:1)