Застрял в выборе классов или идентификаторов с помощью PHP Simple HTML DOM Parser - PullRequest
3 голосов
/ 16 февраля 2010

Я пытаюсь выбрать класс или идентификатор с помощью 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);  

Кто-нибудь может увидеть, где я иду не так?

1 Ответ

6 голосов
/ 16 февраля 2010

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

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

или перебрать спички:

foreach($html->find('.bar') as $element) {
    echo $element->plaintext . '<br />';
}
...