如何在PHP中索引XML元素?

如何在PHP中索引XML元素?,php,xml,dom,Php,Xml,Dom,我对PHP和XML一无所知,所以如果我的问题看起来很愚蠢,请耐心等待 我想知道如何为XML元素编制索引,以便访问它们。我打算把它们放进一个阵列。但是,我不知道如何获取返回的元素数 代码如下: exer.xml 当我进行回声计数时($name)返回1,这显然不是元素数。请提供帮助。查看getElementsByTagName的返回值,它将是一个 对于您的问题,您也可以采取以下措施: $names = array(); foreach ($dom->getElementsByTagName("

我对PHP和XML一无所知,所以如果我的问题看起来很愚蠢,请耐心等待

我想知道如何为XML元素编制索引,以便访问它们。我打算把它们放进一个阵列。但是,我不知道如何获取返回的元素数

代码如下:

exer.xml


当我进行回声计数时($name)返回
1
,这显然不是元素数。请提供帮助。

查看
getElementsByTagName
的返回值,它将是一个

对于您的问题,您也可以采取以下措施:

$names = array();
foreach ($dom->getElementsByTagName("name") as $nameNode) {
  $names[] = $nameNode->nodeValue;
}
您不必实际检查
getElementsByTagName
的返回值,因为它始终是一个域节点列表。这样,您就可以在foreach循环中直接使用它,而无需分配不需要的变量


您需要检查的是循环后
$names
的大小。

查看
getElementsByTagName
的返回值,它将是一个

对于您的问题,您也可以采取以下措施:

$names = array();
foreach ($dom->getElementsByTagName("name") as $nameNode) {
  $names[] = $nameNode->nodeValue;
}
您不必实际检查
getElementsByTagName
的返回值,因为它始终是一个域节点列表。这样,您就可以在foreach循环中直接使用它,而无需分配不需要的变量


您需要检查的是循环后
$names
的大小。

是否输出循环中的节点?是否输出循环中的节点?
$names = array();
foreach ($dom->getElementsByTagName("name") as $nameNode) {
  $names[] = $nameNode->nodeValue;
}