Xpath не ведет себя для меня в разборе основных HTML - PullRequest
0 голосов
/ 09 марта 2011

Я пытаюсь проанализировать некоторые основные HTML с помощью xpath и сталкиваюсь с проблемами. Возвращенный вывод всегда пуст, используя то, что я читаю в документах xpath, чтобы сказать работает. Ниже моя первая попытка сделать эту работу. Любая помощь ценится как всегда, ребята и девочки.

$html  = '<ul>';
$html .= '  <li id="stuff-12345"> some content here </li>';
$html .= '  <li id="stuff-54321"> some other content here </li>';
$html .= '</ul>';

    $dom = new DOMDocument(); 
    $dom->loadHTML($html);  
    $xpath = new DOMXPath($dom); 
    $result = $xpath->query('//ul/li'); 
    foreach($result as $e){
        echo $e->item(0)->nodeValue . "\n";
    }

1 Ответ

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

DOMXPath::query возвращает DOMNodeList.Когда вы делаете

foreach($result as $e){

, вы перебираете элементы DOMElement a DOMNodeList.DOMElement не имеет item() метода.Только DOMNodeList имеет это.Попробуйте с

foreach($result as $e){
    echo $e->nodeValue, PHP_EOL;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...