Php Can';t读取带有simplexml\u load\u字符串的XML文件
我一直试图读取xml文件,但它给了我一个奇怪的错误。 我的XML如下Php Can';t读取带有simplexml\u load\u字符串的XML文件,php,xml,xml-parsing,simplexml,Php,Xml,Xml Parsing,Simplexml,我一直试图读取xml文件,但它给了我一个奇怪的错误。 我的XML如下 <?xml version='1.0' encoding='UTF-8'?> <response> <url>http://xyz.com</url> <token>xxxxxxx<token> </response> 但它给了我这个错误 警告:simplexml加载字符串()[函数.simplexml加载字符串]: 实体:第
<?xml version='1.0' encoding='UTF-8'?>
<response>
<url>http://xyz.com</url>
<token>xxxxxxx<token>
</response>
但它给了我这个错误
警告:simplexml加载字符串()[函数.simplexml加载字符串]:
实体:第1行:解析器错误:需要开始标记,“从API得到的响应格式不正确/XML无效:
<token>xxxxxxx<token>
^ missing /
这将通过首先修复未关闭的标记,然后删除空的标记
元素来生成以下XML:
<?xml version="1.0" encoding="utf-8"?>
<response>
<url>http://xyz.com</url>
<token>xxxxxxx
</token>
</response>
http://xyz.com
xxxxxxx
相关的:
<token>xxxxxxx<token>
^ missing /
这将通过首先修复未关闭的标记,然后删除空的标记
元素来生成以下XML:
<?xml version="1.0" encoding="utf-8"?>
<response>
<url>http://xyz.com</url>
<token>xxxxxxx
</token>
</response>
http://xyz.com
xxxxxxx
相关的:
- 谢谢大家的关注和回复,
但问题出在别的地方
在我的curl请求中,我没有将CURLOPT_RETURNTRANSFER设置为true,这导致XML没有被记录在变量中,并且不知何故被打印在屏幕上,给人一种错觉,认为它来自变量,但事实并非如此。
然而,我将CURLOPT_RETURNTRANSFER设置为1,它现在给了我正确的结果。
为这个愚蠢的错误感到抱歉。
谢谢大家的关注和回复, 但问题出在别的地方 在我的curl请求中,我没有将CURLOPT_RETURNTRANSFER设置为true,这导致XML没有被记录在变量中,并且不知何故被打印在屏幕上,给人一种错觉,认为它来自变量,但事实并非如此。 然而,我将CURLOPT_RETURNTRANSFER设置为1,它现在给了我正确的结果。 为这个愚蠢的错误感到抱歉。
正如您正确指出的,将CURLOPT_RETURNTRANSFER设置为1非常重要
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $postUrl);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_HEADER, 0 ); // set to 1 for debugging
curl_setopt($ch, CURLOPT_POSTFIELDS, $fields);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // return from sms server
正如您正确指出的,CULLOPT_RETURNTRANSFER设置为1非常重要
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $postUrl);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_HEADER, 0 ); // set to 1 for debugging
curl_setopt($ch, CURLOPT_POSTFIELDS, $fields);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // return from sms server
您使用什么编码来保存xml文件?或者XML保存在变量中?此外,此
xxxxxxx
不是格式良好的xml。codepad.org上也有相同的错误:缺少斜杠!我没有将文件保存在这里。我从API获取此xml作为响应。我的页面编码是,文档类型是我不明白的。斜杠缺失在哪里?@hakre关于simplexml\u load\u string()
?。。。了解源字符串是找出实际问题(BOM或其他)所必需的。您使用什么编码来保存xml文件?或者XML保存在变量中?此外,此xxxxxxx
不是格式良好的xml。codepad.org上也有相同的错误:缺少斜杠!我没有将文件保存在这里。我从API获取此xml作为响应。我的页面编码是,文档类型是我不明白的。斜杠缺失在哪里?@hakre关于simplexml\u load\u string()
?。。。了解源字符串是找出实际问题、BOM或其他问题所必需的。这总是简单的事情。>。事情总是很简单的。