HTML DOM Parser - Как получить первый пост из всех тем на форуме - PullRequest
0 голосов
/ 10 марта 2011

Я пытался удалить первый пост из каждой темы на сайте sitepoint javascript forum. Но DOM Parser дал бы мне ВСЕ ПОСЛЕ КАЖДОЙ ТЕМЫ НА САЙТЕ POINT JAVASCRIPT FORUM. Может быть, я не прошел DOM правильно? Ниже мой код:

<?php

class Sitepoint extends Controller
{
    public function index()
    {
        $this->load->helper('dom');
        header('Content-Type: text/html; charset=utf-8');
        echo '<ol>';

            $html = file_get_html('http://www.sitepoint.com/forums/javascript-15');

            foreach($html->find('a[id^="thread_title"]') as $topic) {
                $post =$topic->href;
                $posthtml = file_get_html($post);
                $posthtml->find('div[id^="post_message"]', 0);
                echo'<li>';
                echo $topic->plaintext.'<br>';
                echo $posthtml->plaintext.'<br>';
                echo'</li>';
            }
        echo '</ol>';
    }
}

1 Ответ

1 голос
/ 10 марта 2011

Вы забыли присвоить результат $posthtml->find переменной:

foreach($html->find('a[id^="thread_title"]') as $topic) {
    $post =$topic->href;
    $posthtml = file_get_html($post);
    $posttext = $posthtml->find('div[id^="post_message_"]', 0);
    echo'<li>';
    echo $topic->plaintext.'<br>';
    echo $posttext->plaintext.'<br>';
    echo'</li>';
}
...