迭代不起作用,只返回一个项目

时间:2014-05-22 13:21:52

标签: xml xpath web-scraping

我想抓一个论坛帖子列表及其直接网址。挑战在于直接链接不构成帖子名称。

这是DOM:http://i.imgur.com/9GnHyZU.png

我的结果中只能看到1个项目。以下是我写的。我的迭代逻辑是否正确?

$postTitle = $xpath->query("//tr/td[@class='row1'][3]//span[1]/text()");
$postURL = $xpath->query("//tr/td[@class='row1'][3]//a/@href");

$output = '<ul>';

foreach ($postTitle as $title) $titlesArr[] = $title->nodeValue;
foreach ($postURL as $url) $urlsArr[] = $url->nodeValue;

$nodeValues = '';

for ($i=0; $i < count($nodeValues); $i++) { 
    $output .= '<li><a target="_blank" href="' . $urlsArr[$i] . '">' . $titlesArr[$i] . '</a></li>';
}

$output .= '</ul>';

echo $output;

1 个答案:

答案 0 :(得分:0)

可能是因为 $ nodeValues =&#39;&#39; 。然后,$ i永远不会小于count($ nodeValues)。 尝试删除该行。