函数名:htmlspecialchars_decode
(PHP 5 >= 5.1.0, PHP 7, PHP 8)
htmlspecialchars_decode — 将特殊的 HTML 实体转换回普通字符
说明
htmlspecialchars_decode ( string $string , int $flags = ENT_COMPAT | ENT_HTML401 ) : string
此函数的作用和 htmlspecialchars() 刚好相反。它将特殊的HTML实体转换回普通字符。
被转换的实体有: &, " (没有设置ENT_NOQUOTES 时), ' (设置了 ENT_QUOTES 时), <以及>。
参数
string
要解码的字符串
flags
用下列标记中的一个或多个作为一个位掩码,来指定如何处理引号和使用哪种文档类型。默认为 ENT_COMPAT | ENT_HTML401。
有效的 flags 常量
常量名 说明
ENT_COMPAT 转换双引号,不转换单引号。
ENT_QUOTES 单引号和双引号都转换。
ENT_NOQUOTES 单引号和双引号都不转换。
ENT_HTML401 作为HTML 4.01编码处理。
ENT_XML1 作为XML 1编码处理。
ENT_XHTML 作为XHTML编码处理。
ENT_HTML5 作为HTML 5编码处理。
返回值
返回解码后的字符串。
更新日志
版本 说明
5.4.0 增加了 ENT_HTML401、ENT_XML1、 ENT_XHTML 和 ENT_HTML5 等常量。
范例
示例 #1 一个 htmlspecialchars_decode() 的例子
this ->"
\n"
echo htmlspecialchars_decode($str)
// 注意,这里的引号不会被转换
echo htmlspecialchars_decode($str, ENT_NOQUOTES)
?>
方法/步骤1
htmlspecialchars()转义特别的字符为HTML实体;
'&' (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 '>'
2
htmlspecialchars_decode()将实体转成HTML代码,函数1的反函数。
3
htmlentities()
这个是全部转换html实体,和htmlspecialchars()区别在于,这个函数是转义全部的字符,而htmlspecialchars()仅仅转义上面限定的5个特殊字符!
html_entity_decode() 函数
把 HTML 实体转换为字符。
两个办法:如果来源名称是有限的几个。那么就在编辑页面里,手动将competition更改了。
比如:if( $laiyuan == 'competition' ){$laiyuan = '竞争'}
if( $laiyuan == 'baidu' ){$laiyuan = '百度'}
。。。。
这样页面上自然就显示中文了。但是前提是,这个来源的个数是有限的。
如果来源是不固定的X个,那么就用拼音转汉字,英文转汉字等库来转换一下。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)