从网站xml解析器php解析xml id

时间:2012-01-17 07:21:19

标签: php html xml-parsing

我想解析以下ID:date

我该如何选择它?我知道如何选择一个班级,但我没有运气的身份。

这就是我对课程的所作所为:

$xml->xpath('//*[@class="date"]'); 

我尝试为@class切换@id,但没有运气。我做错了什么?

提前谢谢

@$doc=new DOMDocument();
@$doc->loadHTML($html5);

$xml=simplexml_import_dom($doc);
$images=$xml->xpath('//*[@id="date"]'); 
$arr= array();
foreach ($images as $img) {
  $arr[]= $img;
}

echo $arr[0];

1 个答案:

答案 0 :(得分:2)

现在你让我心疼...

下面的xpath查询将检索具有属性id = date的所有元素。因为你只关心第一个(因为ID属性应该是唯一的......但你永远不知道,所以不应该多于一个),你需要在item(0)中引用DOMNodeList由xpath查询返回。

$xml = '<root><p>element we don\'t care about</p><p id="date">date element text</p></root>';
$doc = new DomDocument;
$doc->loadXML($xml);

$xpath = new DOMXPath($doc);
if ($el = $xpath->query("//*[@id='date']")->item(0)) {
  echo $el->nodeValue; // outputs: date element text
} else {
  echo 'no elements exist in the xml with an "id" attribute';
}

希望有所帮助。