0

我有这个代码:

foreach($html->find('ul.results') as $article) {
            $item['date']     = $article->find('span.result_date', 0)->plaintext;
            $item['title']    = $article->find('a.result_title', 0);
            $item['text'] = $article->find('span.result_text', 0)->plaintext;
            $item['read'] = $article->find('a.read_more', 0);
            $articles[] = $item;
    }
        foreach ($articles as &$item) {
            while ($i < 5) {
                echo $item['date']."&nbsp;&nbsp;&nbsp;";
                echo $item['title'].'</br>';
                echo $item['text']."&nbsp;";
                echo $item['read'].'</br></br>';
            $i++;
        }
    }

我试图回应结果。现在第二个 foreach 没有做任何事情。它只显示五篇相同的文章。文章格式为:日期、标题、正文、阅读全文。我正在尝试对前五个 $articles 进行生态处理,但我找不到合适的方法来做到这一点,这不是 print_r。

4

1 回答 1

1

for each 中的整个循环只会在第一个元素上循环 5 次,移动到下一个元素并循环 5 次,等等。

尝试这样的事情:

$i = 0;
foreach ($articles as $item){
    echo items stuff...
    $i++;
    if ($i == 5) break;
}
于 2012-07-22T04:25:46.320 回答