
PHP如何过滤★等特殊符号
2个回答
展开全部
我的程序是这样编写的,相信你一看就懂:
if(preg_match("/[ '.,:;*?~`!@#$%^&+=)(<>{}]|\]|\[|\/|\\\|\"|\|/",$user)){
echo '不要在名字里面整些特殊符号,请只使用字母、数字和汉字,当然要你的浏览器要选简体中文GB2312哟,千万不要选繁体、中文HZ等。返回修改后,再来,我等你哟!';
exit();
}
if(preg_match("/[ '.,:;*?~`!@#$%^&+=)(<>{}]|\]|\[|\/|\\\|\"|\|/",$user)){
echo '不要在名字里面整些特殊符号,请只使用字母、数字和汉字,当然要你的浏览器要选简体中文GB2312哟,千万不要选繁体、中文HZ等。返回修改后,再来,我等你哟!';
exit();
}
展开全部
那要看你允许的字符串都包含哪些了,如果允许中文字符的话,还要看是否允许输入繁体字符,总之楼主的说明过于笼统~~~
思路如下:
若要求支持简体字符,网上有关于gb2312字符判断的函数,限于篇幅,劳烦楼主自己去搜;若要求支持简繁体字符,目前没有较好的解决方案,网上也有个函数,把所有的中文简繁体字符都做成了一个数组,且能查出拼音,虽很强大但速度较慢,楼主可考虑一下;
剩下的就是普通西文字符了,结合楼上的判断方法,相信类似“★”这种非汉字双字节特殊字符应该就可以排除在外了吧?
思路如下:
若要求支持简体字符,网上有关于gb2312字符判断的函数,限于篇幅,劳烦楼主自己去搜;若要求支持简繁体字符,目前没有较好的解决方案,网上也有个函数,把所有的中文简繁体字符都做成了一个数组,且能查出拼音,虽很强大但速度较慢,楼主可考虑一下;
剩下的就是普通西文字符了,结合楼上的判断方法,相信类似“★”这种非汉字双字节特殊字符应该就可以排除在外了吧?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询