Застрял при выборе классов или идентификаторов с помощью PHP Simple HTML DOM Parser

Я пытаюсь выбрать либо класс, либо идентификатор, используя PHP Simple HTML DOM Parser, но безуспешно. Мой пример очень прост и, кажется, соответствует примерам, приведенным в руководстве (http://simplehtmldom.sourceforge.net/manual.htm), но это просто не работает, это доводит меня до белого каления. Другие примеры сценариев с простым dom работают нормально.

<?php
include_once('simple_html_dom.php');  
$html =  str_get_html('<html><body><div id="foo">Hello</div><div class="bar">Goodbye</div></body></html>');  
$ret = $html->find('.bar')->plaintext;  
echo $ret;  
print_r($ret);  

Может ли кто-нибудь увидеть, где я ошибаюсь?


person Joe    schedule 16.02.2010    source источник


Ответы (1)


$html->find('.bar'); вернет набор совпадающих элементов, поэтому вам нужно передать индекс в качестве второго параметра:

$ret = $html->find('.bar', 0)->plaintext;

или перебрать совпадения:

foreach($html->find('.bar') as $element) {
    echo $element->plaintext . '<br />';
}
person karim79    schedule 16.02.2010
comment
Боже мой, спасибо, я уверен, что пробовал это, но это не сработало. Теперь это работает, большое спасибо. - person Joe; 16.02.2010