htmlspecialchars()
string
htmlspecialchars ( string string [, int quote_style [, string charset]] )
只转换5个特殊的字符
'&' 转换成 '&'
'"'转换成'"'
''' 转换成'''
'<' 转换成'<'
'>' 转换成'>'
quote_style 的三个值
ENT_COMPAT 2 | 只转换双引号,不转换单引号. |
ENT_QUOTES 3 | 都转换 |
ENT_NOQUOTES 0 |
都不转换
|
quote_style 值是 1 的话,只转换单引号,不转换双引号(不知道1的常量是哪个)
htmlspecialchars()只转化5个html代码,而htmlentities()却会转化所有的html代码,连同里面的它无法识别的中文字符也给转化了。
$str='<a href="test.html">测试页面</a>';
echo htmlentities($str); //这里需要设置成 htmlentities($str,3,'gb2312'),不然会有乱码
$str='<a href="test.html">测试页面</a>';
echo htmlspecialchars($str);//无需设置第三个字符集参数
转载于:https://blog.51cto.com/kyocff/243817