我一直在测试我的PHP应用程序,以使用他们的交易API在eBay上列出项目。我在测试中取得了成功,但我刚刚遇到了一些标题中带有 & 符号的项目。
此错误不断返回。
XML Error Text: "; nested exception is:
org.xml.sax.SAXParseException: The entity name must immediately follow the '&' in the entity reference
它告诉我的是,我不能简单地传递与号。
为了解决这个问题,我尝试了几件事:
$string = 'LEUPOLD 66325 4.5-14x50 VX-3 RIFLE SCOPE - SILVER, B&C BOONE & CROCKETT RETICLE';
echo str_replace("&","&",$string);
echo str_replace("&","&",$string);
echo htmlspecialchars($string,ENT_NOQUOTES);
echo htmlspecialchars($string);
echo htmlspecialchars_decode($string);
也试过这样
<![CDATA['.$string.']]>
无论我做什么,当我通过它时都不会成功。
谢谢大家的帮助。
您提交的数据是 UTF8 格式吗?如果不是,那可能是你的问题。
http://developer.ebay.com/Devzone/return-management/Concepts/MakingACall.html#utf8encoding
所有参数值都应以 UTF-8 格式编码。UTF-8 是 API 请求的默认编码。