微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

PHP htmlentities和htmlspecialchars的区别

htmlentities和htmlspecialchars的共同点:

这两个函数的共同点是他们都可以将预定义的字符转换为HTML实体,也就是不让浏览器去解析运行HTML代码,而是原样输出代码

htmlentities和htmlspecialchars不同之处

1、htmlentities将所有html标签转换为HTML实体,而htmlspecialchars只是将& ' " < 和 > 这几个特殊符号转换为HTML实体。

2、当被转换的字符串中有中文时,如果htmlentities不指定编码,则会出现乱码,而htmlspecialchars不会出现中文乱码。

请看下面实例:

PHP

$str = '';

echo htmlentities($str).'
';//没有指定编码,会出现中文乱码

echo htmlentities($str,ENT_COMPAT,"UTF-8")."
";//指定了UTF-8编码,不会出现中文乱码

echo htmlspecialchars($str);

?>

在浏览器上输出如下结果:

查看源码如下:

&lt;a href=&quot;http://www.manongjc.com&quot;&gt;&ccedil;&nbsp;&aring;†œ&aelig;•™&ccedil;&uml;‹&lt;/a&gt;
&lt;a href=&quot;http://www.manongjc.com&quot;&gt;码农教程&lt;/a&gt;
&lt;a href=&quot;http://www.manongjc.com&quot;&gt;码农教程&lt;/a&gt;

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐