我正在尝试使用simplexml和php解析一些xml ...它是从这样的服务返回给我的:
<DMResponse><Code>2</Code><Description>Your request was successfully received You will receive notification once the process has been completed.</Description><ResultData><Explanation> The job name is 578bbn004 </Explanation></ResultData></DMResponse>
我从firebug中的.net面板粘贴了这个。
这就是我试图解析的方法是使用php:
$result = curl_exec($ch);
print 'xml ' . $result . ' xml';
$xml = new SimpleXMLElement($result);
$code = $xml->code;
echo $code;
$ result是deinfitely填充...我在上面的print语句中得到它....它包含我发布的xml结构。
我得到的错误是'字符串无法解析为XML'。我不明白为什么这样做。有什么想法吗?
答案 0 :(得分:3)
尝试$xml = simplexml_load_string($result);
...我从来没有像你那样做过。但这并不是说它不起作用。
编辑:如果simplexml_load_string()
不起作用,您的字符串可能包含一些(不可打印的)无效字符或类似内容。
答案 1 :(得分:1)
要打印SimpleXML对象,您必须使用$xml->asXML()
(打印到文件$xml->asXML(file_name)
)。
如果您仍有错误:
在$xml = new SimpleXMLElement($result);
之后添加此代码时的打印内容
?
echo "<pre>";
var_dump($xml);
echo "</pre>";
die();