我有一个PHP脚本,它解析网页并使用DOMDocument和DOMXpath库导航它。 Wen运行$tr->ChildNodes->length
得到3 <td>
,指令返回6,其中0返回第一个<td>
,1是空字符串(19),2是第二个{{1} },3再次是空字符串(19),4是第三个<td>
,5是另一个空字符串(19)和6是页面的整个HTML。 (使用<td>
测试等)
如何让$dom->saveHTML($tr->childNodes->item(0)
返回正确的数字?为什么它表现得如此奇怪?
->length
请注意,我省略了一些属性,如样式,类,数据等。
答案 0 :(得分:0)
这种行为并不完全&#34;奇怪&#34;。在DOM中,换行符实际上被视为空节点。为了得到正确的&#34;子项的数量,您必须从您要尝试解析的文档中删除换行符,或者获取所有子项并从此节点列表中删除空元素。