我有一个电话号码输入栏,它允许用户以他们想要的任何格式添加电话号码(555-555-5555,(555)555-5555等)。从电话号码输入栏(PHP)提取号码
由于它只是一个电话号码字段,我可以忽略所有字段中的数字。
我正在使用下面的代码。 它提取所有的数字,但问题是它们不是为了 - 它是混乱的顺序。
如何提取数字按原始字符串显示的顺序?
preg_match_all('/\d+/', $Phone, $matches);
$Phone = implode('', $matches[0]);
编辑:他们实际上不是在这个函数一个混乱的秩序 - 我将号码为INT(10)数据库字段,这引起了混杂。但是,下面的答案仍然是实现我的目标的更有效的方式。
有什么用'其他的例子之间的区别^ \ d'和哟你'^ 0-9'? – 2012-02-17 19:02:46
无。 \ d只是一个与字符类[0-9]相同的转义序列。某些转义序列依赖于区域设置,但我不相信\ d是。见http://www.php.net/manual/en/regexp.reference.escape.php – 2012-02-17 19:04:56