计算XML标签

时间:2016-02-12 17:08:34

标签: php xml count

我如何计算所有XML元素?我想找一下<product>标签的使用次数。例如:

<root>
   <product>
   </product>
   <product>
   </product>
   <product> 
   </product>
</root>

我知道有一个名为count的simplexml函数,但我不确定这将如何工作。如果有人可以花时间发布一个例子并解释计数功能,我将非常感激。提前谢谢。

2 个答案:

答案 0 :(得分:2)

As an alternative you can also use SimpleXMLElement.

For example:

$source = <<<SOURCE
<root>
   <product>
   </product>
   <product>
   </product>
   <product>
   </product>
</root>
SOURCE;

$xml = simplexml_load_string($source);

$elements = $xml->xpath('/root/product');
echo count($elements);

Will result in:

3

答案 1 :(得分:0)

这是我想到的一种方式。

// Get content
$html = file_get_contents('http://www.example.com');
$dom = new DOMDocument();
@$dom->loadHTML($html);

// grab all
$xpath = new DOMXPath($dom);
$root = $xpath->evaluate("/root/products");
echo $root->length;