Получить один элемент с PHP и XPath - PullRequest
3 голосов
/ 05 апреля 2010

Множество уроков по сети, но ни один из них не может объяснить мне это:

Как выбрать один элемент (например, в таблице) с абсолютным XPath?

Пример: У меня есть это:

/ HTML / тело / стол / TBODY / тр [2] / тд [2] / стол / TBODY / TR / TD / таблица [3] / TBODY / TR / TD / стол / TBODY / тр [3] / TD / стол / TBODY / тр [4] / тд [5] / оболочка

Что это за функция PHP, чтобы получить текст этого элемента ?! На самом деле я не мог найти ответ. Нашел много руководств и подсказок, чтобы получить все элементы таблицы, все кнопки формы и т. Д., Но не то, что мне нужно.

Спасибо.

Ответы [ 2 ]

5 голосов
/ 05 апреля 2010
$xml = simplexml_load_string($html_content_string);
$arr = $xml->xpath("//body/table/tbody/tr[2]/td[2]/table/tbody/tr/td/table[3]/tbody/tr/td/table/tbody/tr[3]/td/table/tbody/tr[4]/td[5]/span");

var_dump($arr); 
2 голосов
/ 05 апреля 2010

Загрузите ваш HTML-документ в объект DOM, затем создайте из него объект DOMXPath и дайте ему возможность оценить вашу строку запроса.

Здесь все подробно описано: http://php.net/manual/en/book.dom.php

...