计算根节点内的元素

时间:2012-08-03 16:33:34

标签: php xml parsing simplexml

我对php很新,但我一直在谷歌上搜索这段代码:

<?php

$xml = simplexml_load_file("playlist.xml");
echo 'Count: '.$xml->count();

?>

应为下一个文件打印Count:5:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<playlist>
<vid src="video/P_ANIMACION.mp4"/>
<vid src="video/120414MIAMGIOQUIJOTE.mp4"/>
<vid src="video/120314ENSEMBLEDIDER.mp4"/>
<vid src="video/120418ENSEMBLEPRAETERITUM.mp4"/>
<vid src="video/P_AGLOBAL CAJA.mp4"/>
</playlist>

但是我得到“致命错误:调用未定义的方法SimpleXMLElement :: count()”,由于SimpleXMLElement存在计数,因此看起来不太符合逻辑(参见link)。任何人都知道为什么会这样?

1 个答案:

答案 0 :(得分:4)

正如我在评论中添加的那样, - &gt; count()首先被添加到PHP 5.3中的SimpleXMLElement。如果您使用的是早期版本,则必须使用:

count($xml->children());

代替。这至少在PHP 5.3上给出了相同的答案。