如何使用XML字符串在php中查找某些元素值?

时间:2010-12-03 16:33:19

标签: php xml

如何使用XML字符串查找其特定元素值? 我用了这段代码:

    10: $php_var = json_decode($json, 1);
    11  $serializer=new XML_Serializer();
    12: if($serializer->serialize($php_var))
    13: xml_string=htmlspecialchars($serializer->getSerializedData()); 
    14: echo $xml_string;
    15: $xml_obj = new DOMDocument();
    16: $xml_obj->loadXML($xml_string);
    17: $urls=$xml_obj->getElementsByTagName('url');

但它不起作用,我收到了警告:DOMDocument::loadXML() [domdocument.loadxml]: Start tag expected, '<' not found in Entity, line: 1 in /var/www/seo-tool/get_details.php on line 15

1 个答案:

答案 0 :(得分:0)

htmlspecialchars()是什么?该函数将所有<>转换为&lt;&gt;,而xml不再是xml。

删除该电话。如果要回显XML,请执行echo htmlspecialchars($xml_string)但不要将其存储在变量中。


老是:
您发布的XML似乎有效。

但是你在字符串的开头缺少XML声明:

<?xml version="1.0" encoding="UTF-8" ?>