php过滤特殊
‘壹’ php中如何过滤所有的特殊字符
用正则匹配替换
用函数str_replace一个一个替换
‘贰’ php怎样过滤掉特殊字符啊 ☺
过滤掉特殊字符,可以考虑使用字符串替换的方法,在php中替换字符效率最高也是最简单字符替换函数str_replace函数。
使用方法:str_replace(find,replace,string,count)
参数说明:
find 必需。规定要查找的值。
replace 必需。规定替换 find 中的值的值。
string 必需。规定被搜索的字符串。
count 可选。一个变量,对替换数进行计数。
实例:
str_replace("iwind","kiki","iloveiwind,iwindsaid");
将输出 "i love kiki, kiki said"
当然你也可以采取正则替换的方法,该函数是preg_replace
‘叁’ php怎样过滤非法字符防止sql注入
htmlspecialchars($_POST['字段']),用这个函数就可以将一些特殊字符进行过滤转义。你可以去看看这个函数的说明。
‘肆’ PHP如何过滤★等特殊符号
我的程序是这样编写的,相信你一看就懂:
if(preg_match("/[ '.,:;*?~`!@#$%^&+=)(<>{}]|\]|\[|\/|\\\|\"|\|/",$user)){
echo '不要在名字里面整些特殊符号,请只使用字母、数字和汉字,当然要你的浏览器要选简体中文GB2312哟,千万不要选繁体、中文HZ等。返回修改后,再来,我等你哟!';
exit();
}
‘伍’ PHP 如何过滤特殊字符 如 ◆ )- : 、 、!! / 等
PHP 中的 preg_replace() 函数可以实现
实例:只匹配中文
<?php
$str="php)!!编程";
echopreg_replace("/[^x{4e00}-x{9fa5}]/iu",'',$str);
?>
‘陆’ php 如何过滤特殊字符,如 ◆ )- : 、 、!! / 等
可以用 str_replace() 函数统一替换,如:
$string = "测试◆例子♂ 在此 !";
$replace = array('◆','♂',')','=','+','$','¥','-','、','、',':',';','!','!','/');
$string = str_replace($replace, '', $string);
echo $string;
‘柒’ php 如何过滤 单引号 双引号 $ < > 等N种特殊符号谢谢
我给楼主吧- - 首先是过滤html,将html编码转换为实体编码 /**
* 将特殊字符转成 HTML 格式。
* @param string $value - 字符串或者数组
* @return array
*/
public static function htmlspecialchars($value) {
return is_array($value) ? array_map('k::htmlspecialchars', $value) :
preg_replace('/&((#(\d{3,5}|x[a-fA-F0-9]{4})|[a-zA-Z][a-z0-9]{2,5});)/', '&\\1',
str_replace(array('&', '"', '<', '>'), array('&', '"', '<', '>'), $value));
} 还有一个去除html编码的,可以直接用php的函数strip_tags()
‘捌’ PHP怎样过滤中文状态下特殊字符(比如标点符号)
functionfilterGBK_SpecialChars($str)
{
$str=urlencode($str);//将关键字编码
//下面的必须写在一行,不可换行截断
$str=preg_replace("/(%7E|%60|%21|%40|%23|%24|%25|%5E|%26|%27|
%2A|%28|%29|%2B|%7C|%5C|%3D|-|_|%5B|%5D|%7D|%7B|%3B|%22|%3A|
%3F|%3E|%3C|%2C|.|%2F|%A3%BF|%A1%B7|%A1%B6|%A1%A2|%A1%A3|%A3%AC|
%7D|%A1%B0|%A3%BA|%A3%BB|%A1%AE|%A1%AF|%A1%B1|%A3%FC|%A3%BD|%A1%AA|
%A3%A9|%A3%A8|%A1%AD|%A3%A4|%A1%A4|%A3%A1|%A1%AB|%A3%FB|%A3%FD|%A1%BE|
%A1%BF|)+/",'',$str);
$str=urldecode($str);//将过滤后的关键字解码
return$str;
}
$str='广~·@#¥%……&*()——+|-=、{}【】:;“”‘’~“《》,。?、州;?海【,鲜。餐“”】(,厅)';
echofilterGBK_SpecialChars($str);
‘玖’ php 如何过滤掉xml中的特殊字符
functionxmlentities($string,$quote_style=ENT_QUOTES)
{
static$trans;
//
//
$string=html_entity_decode($string,ENT_QUOTES);
//xmlencoding
if(!isset($trans))
{
$trans=get_html_translation_table(HTML_ENTITIES,$quote_style);
foreach(array_keys($trans)as$key)
{
$trans[$key]='&#'.ord($key).';';
}
//donttranslatethe'&'incaseitispartof&xxx;
$trans[chr(38)]='&';
}
//aftertheinitialtranslation,_do_mapstandalone'&'into'&'
$str_temp=preg_replace("/&(?![A-Za-z]{0,4}w{2,3};|#[0-9]{2,3};)/u"
,"&"
,strtr($string,$trans)
);
return$str_temp;
}