PHP Xpath不获取计数功能

时间:2014-07-09 16:34:12

标签: php xpath domxpath

更新

为了避免删除这个问题,在几条评论后我意识到,PHP使用Xpath 1.0,所以我试图使用Xpath 2.0版中的函数。

感谢您的反馈,并希望一些高信誉的用户建议我,如果最好删除问题或留下更新。


我一直在搜索这个问题,但没有一个解决方案适合我。我在PHP中使用DomXPath,并使用模板测试程序用于Xpath 2.0 来测试我的查询:http://videlibri.sourceforge.net/cgi-bin/xidelcgi

这是开始处理它的代码的第一部分:

   $dom_html = new DOMDocument();
   libxml_use_internal_errors(true);
   $dom_html->loadHTMLFile($file);
   libxml_clear_errors();
   $xpath = new DOMXPath($dom_html);

然后我在Xpath 2.0测试程序中尝试此查询:

//table/tbody/tr/td/div/count(table)

这个查询给出了每个div里面的数量,这对我来说是一个完美的解决方案:

11 2 1 1 2 14 4 19 4 4 3 2 9 16

但是当我尝试在PHP中使用相同内容时,我还没有获得这些数字。我尝试了以下解决方案:

$quantity  = $xpath->evaluate('count(//table/tbody/tr/td/div/table)');

但这给了我总数,而不是给我理想的解决方案。

$quantity  = $xpath->query('//table/tbody/tr/td/div/count(table)');

当我进行此查询时,我尝试使用两种不同的方法来获得mi想要的答案,但它们都不适合我:

1)

foreach ($quantity as $content)  
{   
  echo $content->nodeValue; 
}

2)

foreach ($quantity as $content) 
{
   echo $contenido->textContent;
}

由于

0 个答案:

没有答案