Как я могу получить страницу HTML как строку через PHP?

Можно вставить изображение с анимацией в право DOM перед вызовом Ajax и сделать подставляемую функцию для удаления его...

$("#myDiv").html('<img src="images/spinner.gif" alt="Wait" />');
$('#message').load('index.php?pg=ajaxFlashcard', null, function() {
  $("#myDiv").html('');
});

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

Удачи!

5
задан GEOCHET 31 July 2009 в 02:02
поделиться

3 ответа

При использовании curl вам нужно убедиться, что вы устанавливаете параметр CURLOPT_RETURNTRANSFER, чтобы гарантировать получение страницы в виде строки, например:

    //return the transfer as a string 
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 

См. http: // www.php.net/manual/en/function.curl-setopt.php

4
ответ дан 18 December 2019 в 10:47
поделиться

file_get_contents - Читает весь файл в строку

string file_get_contents ( 
    string $filename [, int $flags= 0 [, resource $context [, int $offset= -1 [, int $maxlen= -1 ]]]] 
)

из руководства:

Эта функция аналогичен file (), за исключением того, что file_get_contents () возвращает файл в виде строки, начиная с указанного смещения до maxlen байтов. В случае ошибки file_get_contents () вернет FALSE.

file_get_contents () - это предпочтительный способ чтения содержимого файла в строку. Он будет использовать методы отображения памяти, если они поддерживаются вашей ОС, для повышения производительности.

И он работает как с веб-страницами, так и с файлами. Вы можете получить HTML-код, просто используя " http://whatever.com/page.html " в качестве $ filename.

12
ответ дан 18 December 2019 в 10:47
поделиться

Я использовал cURL, чтобы поместить файл в строку (simple_html_dom :: load_file просто обертывает file_get_contents), а затем использовал метод загрузки simple_html_dom (из строки) для его анализа. Это работает для некоторых URL-адресов, но не работает в этом случае, когда URL-адрес имеет строку параметров. Он получает URL-адрес, как если бы у него не было строки параметров. Я установил агент с curl для имитации браузера, но без кубиков.

Извините, на самом деле это не ответ, но, возможно, использование curl будет работать для некоторых людей, для которых настройка fopen является проблемой.

0
ответ дан 18 December 2019 в 10:47
поделиться
Другие вопросы по тегам:

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