0

您好,我有一个这样的 XML 代码:

<article>
  <title><![CDATA[IEEE Transactions on]]></title>
  <articleinfo>
    <articleseqnum>13</articleseqnum>
    <idamsid>0b0000648011bcfb</idamsid>
.............

我尝试使用 SimpleXML 访问元素的父元素,如下所示:

$xmlUrl = "example.xml"; // XML feed file/URL

$xmlStr = file_get_contents($xmlUrl);

$xmlObj = simplexml_load_string($xmlStr);

$titles = $xmlObj->xpath("//title");

foreach ($titles as $title)
{
   $parent_title = $title->xpath("parent::*");

   echo "Parent element of title: ". $parent_title."</br>";

}

但我接受这个结果:

Parent element of title: Array

代替

Parent element of title: article

可能是什么问题?先感谢您!

4

1 回答 1

0

从 ->xpath() 结果数组中取出第一个元素,并在其上调用 getName()。(循环内)

$parent_title = $title->xpath("parent::*");
if ($parent_title) {
    echo "Parent element of title: ", $parent_title[0]->getName(), "</br>\n";
}
于 2012-07-15T13:43:43.007 回答