[英]Send SMS to phone - php form removing ( ) and - from the phone number submitted
[英]Removing non digits from a form field containing a phone number
在搜索这个论坛时,我发现我认为是可以帮助解决我的情况的代码,但是我不确定如何实现它。 我在WHMCS(网络托管管理软件)中有一个表格,希望将输入的电话号码转换成数字。
例如:最终用户键入(333) 444-5555
,但是表单读取并记录3334445555
。 我还想输入“ 1”。 同时在电话号码前。 因此,基于上述输入的最终输出将为1.3334445555
。
我的表单代码(第124行): http : //pastebin.com/ngMTiPbA
这是我在本网站上找到的代码,可能对我有帮助。
preg_replace("/[^A-Za-z0-9 ]/", '', $string);
有人可以帮我把这些放在一起吗?
这样做:
$phone - '1.' . preg_replace('/\D/', '', $phone);
正则表达式\\D
匹配任何非数字。
下面的代码将按需要工作。
<?php
$str = '(333) 444-5555';
$numbers = preg_match_all('!\d+!', $str, $matches);
$numbers = implode('',$matches[0]);
$required_output = '1.'.$numbers;
echo $required_output; //output will be "1.3334445555"
?>
你可以这样做:
$myPhone = "1." + (filter_var($myInpt, FILTER_SANITIZE_NUMBER_INT));
使用此功能filter_var( http://www.php.net/manual/zh/function.filter-var.php ),您可以在某些指定的过滤器中清理变量(有关详细信息,请阅读此处: http:// www。 php.net/manual/en/filter.filters.sanitize.php )
因此,如果您输入的是
tel4568
功能革命
4568
因此与“ 1”串联。 您有所需的字符串。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.