您的位置:首页 > Web前端 > HTML

htmlentities跟htmlspecialchars的区别

2009-04-12 21:35 375 查看
两个函数在格式化带有英文字符的html代码的时候基本没啥问题,但是htmlentities对中文字符也不放过,这样得出来的结果是中文字符部分变为一堆乱码。

The translations performed are:

‘&’ (ampersand) becomes ‘&’

‘”‘ (double quote) becomes ‘”‘ when ENT_NOQUOTES is not set.

”’ (single quote) becomes ”’ only when ENT_QUOTES is set.

‘<’ (less than) becomes ‘<’

‘>’ (greater than) becomes ‘>’

htmlspecialchars只转化上面这几个html代码,而htmlentities却会转化所有的html代码,连同里面的它无法识别的中文字符也给转化了。

<?php

$str='<a href="test.html">测试页面</a>';
echo htmlentities($str);

//<a href="test.html">²âÊÔÒ³Ãæ</a>

echo htmlspecialchars($str);

//<a href="test.html">测试页面</a>

?>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: