Вопрос по php, file-get-contents, simple-html-dom – Как использовать file_get_contents или file_get_html?

9

прочитал немало вопросов здесь и яЯ не уверен, должен ли я использоватьfile_get_contents или жеfile_get_html за это.

Все, что яя пытаюсь сделать, это использовать PHP для отображения двух таблиц с этой страницы на моем сайте:http://www.statmyweb.com/recently-analyzed/

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

@pguardiario - правда, я должен был заметить, что Mark Baker
@Mark Baker, тег simple-html-dom мог бы быть хорошей подсказкой pguardiario

Ваш Ответ

3   ответа
28

Ты хочешьfile_get_html так какfile_get_contents загрузит тело ответа в строку, ноfile_get_html загрузит его в simple-html-dom.

$dom = file_get_html($url);
$tables = $dom->find('table');
echo $tables[0];
echo $tables[1];

В качестве альтернативы вы можете использоватьfile_get_contents вместе с :str_get_html

$dom = str_get_html(file_get_contents($url));

Но это было бы глупо.

как вы можете покрыть $ dom в строке, которая имеет похожую строку, которую мы можем получить с помощью file_get_content, или мы можем использовать любую другую функцию, такую как file_get_content, чтобы получить строку из $ dom Nit
Обычно это было бы глупо. За исключением, может быть, вы можетеt использовать либо file_get_contents, либо file_get_html из-за ограничений (например, allow_url_fopen выключен). В этом случае вы, вероятно, собираетесь собрать строку с помощью curl, а затем использовать str_get_html. Не совсем вопрос ОП, но это может кому-то помочь .... niccol
2

Вы не можете указать вfile_get_contents() просто чтобы получить таблицы.

Вы должны получить возвращаемое значениеfile_get_contents() с помощью:

$result = file_get_contents("urlHere");

А затем проанализировать$result переменная и извлекать какую информацию вам нужно вывести.

0

Возьмите полный контент сайтаfile_get_contents()затем примените preg_match к содержимому, которое вы получили а также, Это принесет вам все содержимое под тегами таблицы. Показывая это на своей веб-странице, просто вставьте затем повторить ваш соответствующий контент и в конце.

+1 Это было бы больно (особенно когда доступен такой инструмент, как simple_html_dom), но определенно работало бы. rodrigo-silveira
Как упоминалось ранее, функции регулярных выражений представляют собой неоптимальный инструмент для выполнения задачи. mickmackusa
Это будет работать для этого конкретного примера, но не будет работать в некоторых других случаях, например, когда есть вложенныйtable элемент внутриtable Yuval A.

Похожие вопросы