1.htmlspecialchars($string, $flag) (Convert special characters to HTML entities 转换特殊字符为HTML实体)
预定义的字符是:
& (和号)成为 &
" (双引号)成为 "
' (单引号)成为 '
< (小于)成为 <
> (大于)成为 >
$flag 默认为ENT_COMPAT | ENT_HTML401
常量名
描述
ENT_COMPAT
转换双引号,不转换单引号。
ENT_QUOTES
单引号和双引号都转换。
ENT_NOQUOTES
单引号和双引号都不转换。
ENT_HTML401
作为HTML 4.01编码处理。
ENT_XML1
作为XML 1编码处理。
ENT_XHTML
作为XHTML编码处理。
ENT_HTML5
作为HTML 5编码处理。
EXP:
$str = '"2015竞赛&"';
echo htmlspecialchars($str); //"2015竞赛&"quot;
2.htmlspecialchars_decode($string, $flag) (与上面相反,将特殊的 HTML 实体转换回普通字符)
EXP
$str = "
this -> "
\n" ;echo htmlspecial_decode($str); // this -> "
/*不转换双引号*/
echo htmlspecial_decode($str, ENT_NOQUOTES); // this -> "
3.htmlentities
`htmlentities($string, $flag)`
这个函数与htmlspecialchars的区别网上教程说是也会转换中文,但是我本地php5.5测试两个效果一样
$str='测试页面';
echo htmlentities($str);
$str='测试页面';
echo htmlspecialchars($str);
4.html_entity_decode
是`htmlentities`的反函数
5.nl2br
转换换行符(\n(unix), \r(Mac), \r\n(Win))为`
`