PHP把空格、换行符、中文逗号等替换成英文逗号的正则表达式_php技巧
程序员文章站
2022-04-07 15:50:43
...
在开发的过程中,经常会遇到需要给别人提供一个输入框,然后别人输入一些ID,或者关键字的东西,例如wordpress的后台的标签输入框:
$ids=$_POST["ID"];
$id= preg_replace("/(\n)|(\s)|(\t)|(\')|(')|(,)/" ,',' ,$ids);
$topicids = explode("," ,$tids);
$ids = preg_replace("/(\n)|(\s)|(\t)|(\')|(')|(,)|(\.)/",',',$ids);
这个就是只是判断英文状态下的逗号,要是有人不小心输入了中文状态下的逗号怎么办?小数点怎么办?
于是我就用正则写了一个表达式,把带有空格换行符之类的替换成逗号。
把提交的id带有空格换行符之类的替换成逗号,然后用explode函数切换成数组。
复制代码 代码如下:
$ids=$_POST["ID"];
$id= preg_replace("/(\n)|(\s)|(\t)|(\')|(')|(,)/" ,',' ,$ids);
$topicids = explode("," ,$tids);
这个是增加了小数点的过滤。
复制代码 代码如下:
$ids = preg_replace("/(\n)|(\s)|(\t)|(\')|(')|(,)|(\.)/",',',$ids);
OK,经过这样处理后,就不会有问题了。
提示:其实,小编感觉用JS在提交前就处理掉这个问题,是一个更好的选择。