1

我正在上传 xml 文件并访问 php 类中的值。一切都很顺利,但是当我尝试访问 $middle_of_month 值时,我有一个名为的调试错误

“调用未定义的方法 DOMNodeList::getElementsByTagName()”

这是xml的样子

...
<Fdr>
  <MiddleOfMonth>
      <Data Value="0" MonthNumber="1" />
      ...

我通过调试验证了其他标签正确。

$fdr             = $key->getElementsByTagName(tag_constants::TAG_FDR);
$middle_of_month = $fdr->getElementsByTagName(tag_constants::TAG_MIDDLE_OF_MONTH);

我在 $middle_of_month 行中有错误。我调试了 2 个小时,但仍然无法找出问题所在。任何帮助,将不胜感激

编辑 :

tag_constants::TAG_FDR -> Fdr
tag_constants::TAG_MIDDLE_OF_MONTH ->MiddleOfMonth

编辑 2:

$middle_of_month = $fdr->item(0)->getElementsByTagName(tag_constants::TAG_MIDDLE_OF_MONTH); 

似乎可以解决问题

4

1 回答 1

2

getElementsByTagName()返回 a NodeList,并且正如错误所暗示的那样,NodeLists 没有这个方法(只有Elements 和Documents 有)。

您将需要从中选择一个项目$fdr来运行getElementsByTagName();也许像:

$fdr->item(0)->getElementsByTagName(tag_constants::TAG_MIDDLE_OF_MONTH);
于 2013-09-18T06:52:59.250 回答