我有一个XML文件,其中包含多个在将这些数据导入数据库时不希望使用的节点。这是我的xml文件:
DataSnapshot
首先,我用以下代码计算所有子节点:
<xml version="1.0" encoding="utf-8"?>
<METADATA>
<META>
<ID>001</ID>
<SEG>CONT</SEG>
<FIELD>XXX</FIELD>
<VIEW>A001</VIEW>
<PRAEFIX>POS</PRAEFIX>
<LENG>000009</LENG>
<NODE1/>
<DATATYPE>STRG</DATATYPE>
<NODE2/>
<PARAM>FILENAME</PARAM>
<PARAM_ZERO>MAXXXX</PARAM_ZERO>
<PARAM_ONE>MAXXXX24</PARAM_ONE>
<PARAM_TWO>X</PARAM_TWO>
<PARAM_THREE>NO</PARAM_THREE>
<PARAM_FOUR>NO</PARAM_FOUR>
<NODE3/>
</META>
</METADATA>
</xml>
如您所见,它返回正确的$xml = simplexml_load_string('XMLFile');
$nodes = $xml->METADATA->META;
$first_node = $nodes[0];
$count_child_nodes= count($first_node);
echo $count_child_nodes; // returns 16
个子节点,无论如何我想跳过所有格式为16
的节点,在我的示例中<TEXT/>
,{{1} }和<NODE1/>
,因此实际计数应为<NODE2/>
。
有人知道我该怎么做吗?我有多个XML文件,因此我不知道像<NODE3/>
这样的节点会在我的XML文件中出现的频率。任何帮助将不胜感激。