首页 > 解决方案 > 如何在多搜索字段中搜索之前对电话号码进行消毒?

问题描述

我有一个字段,用户可以在其中搜索 MySQL 数据库的电子邮件、电话和用户名。数据库中的所有数字均为 10 位 (1231231234) 格式。

如果(如果有的话很大)用户输入以下格式的电话号码我希望它被清理成一个 10 位的字符串,因为它在数据库中相关:

(123)123-1234
123-123-1234
123.123.1234
+1(123)123-1234
11231231234

允许用户名和电子邮件具有 . 和 - 字符。因此,我不知道如何使用 PHP 来确定它是否是其中一种格式,然后相应地对其进行清理。想法?

标签: phpmysql

解决方案


这将删除您需要从电话号码或任何其他值中删除的任何内容。如果您需要删除其他内容,只需更新数组即可。

$string = str_replace(array('-',' ','.','(',')',',','"','+'),'',$string);

推荐阅读