Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/13.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.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 站点地图URL的标准编码_Php_Xml_Sitemap - Fatal编程技术网

Php 站点地图URL的标准编码

Php 站点地图URL的标准编码,php,xml,sitemap,Php,Xml,Sitemap,我想把我的网站地图提交给谷歌,但我不想把事情搞砸。我也有麻烦的网址提交;其中一些符号中有特殊字符,如与(&)符号和括号()。我只是想知道正确的处理方法是什么 我目前正在使用PHP的urlencode(),它将它们转换为%28,%29等等,这些看起来并不太好,我担心如果我给谷歌这些链接,他们会继续索引它们,他们会将它们作为索引 domain.com/blabla%28blabla.html 而不是 domain.com/blabla&blabla.html 您是手工生成XML的吗?请考

我想把我的网站地图提交给谷歌,但我不想把事情搞砸。我也有麻烦的网址提交;其中一些符号中有特殊字符,如与(
&
)符号和括号
()
。我只是想知道正确的处理方法是什么

我目前正在使用PHP的
urlencode()
,它将它们转换为
%28
%29
等等,这些看起来并不太好,我担心如果我给谷歌这些链接,他们会继续索引它们,他们会将它们作为索引

domain.com/blabla%28blabla.html
而不是

domain.com/blabla&blabla.html

您是手工生成XML的吗?请考虑使用类似PHP的东西。

实际上,您需要将安培数编码为
&,等等,但最好让库为您发出格式良好的XML


有关这方面的更多讨论,请参阅。

urlencode()
是正确使用的函数。您肯定不希望在URL中使用符号,因为它们是用于形成URL(用于传递GET变量)的特殊字符。

我使用的是一个sitemap.php文件,该文件回显XML并从数据库中获取链接,我只是不确定如何处理它们,如果使用indexed,它们会是什么样子。这就是我手动输出XML的意思。您正在手动创建XML内容。你可以使用htmlspecialchars()几乎一直正确。是的,htmlspecialchars大多数时候都会给我编码错误,所以如果我给google URL,比如/someurl\u和\u&\u在\u it.html中,他们会继续给它编索引,他们会这样给它编索引,或者像/someurl\u和\u&u在\u it.htmly中,你也可能想要合并你的两个用户配置文件,请参见此处以获取帮助: