我使用API从数据库中提取数据; API将数据返回到XML文件中。
我可以使用PHP(file_get_contents()和file_put_contents())将API返回到我的服务器上的XML文件中。对于我几乎所有的字段,我能够解析我创建的XML文件并使用PHP或javascript操作它(即,我已成功完成)。
我需要调用的一个字段值是一个自动下载图像文件的复杂URL。我可以使用API调用该字段,并将其与其余字段一起放入XML文件中。
但是,PHP解析器(simplexml_load_file())或Javascript解析器(XMLHttpRequest())都无法使用复杂的URL字段读取XML文件。我知道我有用于解析的编写代码,因为就像我说的那样,我可以用这些解析器成功地操纵任何其他字段。
我如何才能进入这个代理商的照片领域?
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<results count="4">
<row id="14" created="2013-04-07 21:43:59" updated="2013-05-05 19:12:21">
<agencyPhoto>https://fw.civicore.com/vtmentoring/index.php?downloadFile=1&table=agencies&field=agencyPhoto&check=969ac322f0347d4358bd3a7852b7b282&key=14</agencyPhoto>
</row>
</results>
答案 0 :(得分:1)
您的XML看起来不合适。该网址包含非法的未转义&
个字符。它们应该转义为&
或者放入CDATA。首先解决这个问题然后继续。
所以要么
<agencyPhoto>https://fw.civicore.com/vtmentoring/index.php?downloadFile=1&table=agencies&field=agencyPhoto&check=969ac322f0347d4358bd3a7852b7b282&key=14</agencyPhoto>
或
<agencyPhoto><![CDATA[https://fw.civicore.com/vtmentoring/index.php?downloadFile=1&table=agencies&field=agencyPhoto&check=969ac322f0347d4358bd3a7852b7b282&key=14]]></agencyPhoto>
答案 1 :(得分:1)
可能是&符号(&
)。尝试用&
替换它们
即
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<results count="4">
<row id="14" created="2013-04-07 21:43:59" updated="2013-05-05 19:12:21">
<agencyPhoto>https://fw.civicore.com/vtmentoring/index.php?downloadFile=1&table=agencies&field=agencyPhoto&check=969ac322f0347d4358bd3a7852b7b282&key=14
</agencyPhoto>
</row>
</results>