strip_tags、htmlentities、htmlspecialchars的区别
一、strip_tags() 函数剥去字符串中的 HTML、XML 以及 PHP 的标签。
strip_tags(string,allow)
注释:可通过allow设置允许的标签。这些标签不会被删除。
注释:该函数始终会剥离 HTML 注释。这点无法通过 allow 参数改变。
注释:该函数是二进制安全的。
二、htmlspecialchars() 函数把预定义的字符转换为 HTML 实体。
htmlspecialchars(string,flags,character-set,double_encode)
预定义的字符包括 & " ' < >
三、htmlentities() 函数把字符转换为 HTML 实体。
htmlentities(string,flags,character-set,double_encode)
与htmlspecialchars最大的不同是: 会转换所有具有 HTML 实体的字符。
总结:
strip_tags去除字符串中的HTML、XML、PHP标签,
htmlentities转换所有HTML标签,
htmlspecialchars只转换 & 、’、 “、 <、> 这五个特殊符号,
在使用htmlentities不指定编码时中文会乱码 。
所谓勇者,不过是在认清生活真相之后,依然热爱生活!