php访问XML中的子元素

时间:2013-04-18 08:24:08

标签: php xml-parsing

我在PHP中使用simplexml来解析XML文档。我有以下元素我无法创建其中一个子元素的正确路径。这是元素:

<wp:category>
<wp:term_id>13</wp:term_id>
<wp:category_nicename>cleaner</wp:category_nicename>
<wp:category_parent></wp:category_parent>
<wp:cat_name><![CDATA[CLEANER]]></wp:cat_name>

我需要访问的元素是<wp:cat_name>

我将使用哪条路径来访问数据?


$ WP-&GT;分类 - &GT; cat_name;是元素的路径。

1 个答案:

答案 0 :(得分:0)

我认为您可以将xml导入为DomDocument而不保留名称空间

$xml ='
<wp:category>
    <wp:term_id>13</wp:term_id>
    <wp:category_nicename>cleaner</wp:category_nicename>
    <wp:category_parent></wp:category_parent>
    <wp:cat_name ><![CDATA[CLEANER]]></wp:cat_name>
</wp:category>';

$data = new DOMDocument;
$data->preserveWhiteSpace = FALSE;
$data->loadXml($xml, LIBXML_NOERROR);
foreach($data->documentElement->childNodes as $child)
{
    if($child->nodeName == 'cat_name')
    {
        print_r($child->nodeValue);
    }
}

这将输出

CLEANER