我有一个生成xml文件并在屏幕上打印的php。
在其他变量中,它会打印一个Image链接。
问题是,如果此图片链接有'&'其中的字符,我得到一个xml错误,因为它没有正确编码。
所以我通过用&
替换&
符号来解决这个问题。
Atleast我认为它已经解决了,现在图像的链接就像这样:
www.domain.com/phones & equipment/img1.jpg
导致找不到404文件。
真正的道路是
www.domain.com/phones & equipment/img1.jpg
那我怎么解决呢? 我不想更改文件夹名称,我在创建文件夹时根本就不知道。
由于
答案 0 :(得分:4)
如果是网址,您可能需要URL encode代替:
www.domain.com/phones%20%26%20equipment/img1.jpg
答案 1 :(得分:1)
尝试
www.domain.com/phones+%26+equipment/img1.jpg
答案 2 :(得分:1)
您应该使用php urlencode()
函数对该链接进行url编码。 '&'的代码是“%26”。
答案 3 :(得分:1)
此外,如果您检查有关URL / URI的IANA RFC,您将看到空格字符不是有效字符,并且不应出现在REQUEST URI中。从SEO角度来看,像www.domain.com/phones-and-equipment/img1.jpg
这样的网址也会非常有用。
ADDENDUM:例如,请查看第2页“{3}}的”不安全“部分,了解不可打印和非US-ASCII字符不安全的原因。
答案 4 :(得分:0)
使用html_entity_decode
将&
转换回&
答案 5 :(得分:0)
XML文件中&符号的正确表示为&
。如果这不起作用,问题在于正在读取XML文件并引用URI的代码。