Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 将特殊字符转换为HTML实体,为什么?_Php_Html_Utf 8_Escaping - Fatal编程技术网

Php 将特殊字符转换为HTML实体,为什么?

Php 将特殊字符转换为HTML实体,为什么?,php,html,utf-8,escaping,Php,Html,Utf 8,Escaping,我想知道,什么是最佳实践。将所有utf-8特殊字符转换为HTML实体或仅转义&、 我正在做几个PHP项目。谷歌在我的网站上随机显示了一些错误的utf-8结果 我认为这是因为以下两个原因中的一个或两个: 我的主机提供商没有自动发送编码头(我已经解决了这个问题) 或者在描述中文本没有完全转义 除此之外,我注意到大多数市长公司网站都不发送 转义所有字符与只转义最小字符相比,是否有缺点(或优点) 现在不需要转换&“'(如所做)以外的任何字符。如果页面的字符集配置正确,则使用本机UTF-8字符(或您选

我想知道,什么是最佳实践。将所有utf-8特殊字符转换为HTML实体或仅转义&、<和>

我正在做几个PHP项目。谷歌在我的网站上随机显示了一些错误的utf-8结果

我认为这是因为以下两个原因中的一个或两个:

  • 我的主机提供商没有自动发送编码头(我已经解决了这个问题)
  • 或者在描述中文本没有完全转义
除此之外,我注意到大多数市长公司网站都不发送

转义所有字符与只转义最小字符相比,是否有缺点(或优点)


现在不需要转换
&“'
(如所做)以外的任何字符。如果页面的字符集配置正确,则使用本机UTF-8字符(或您选择的任何字符集)没有问题。将它们转换为实体没有任何好处。它们有时被用作解决字符集问题的错误方法,但这几乎从来都不是一个好主意。

你说htmlentities,但你链接到htmlspecialchars。但是我理解你的观点。那么“@Paul fixed,谢谢!你是XML头,我不确定我是否理解你的意思也就是说,您希望在什么上下文中发送它?html文档的第一行,w3说使用``但是市长网站不使用这一行。@Paul这是一个XML序言,与此无关