PHP / 11. Автоматизация работы с Web

Большую часть времени PHP работает как часть веб-сервера, посылая информацию броузерам. Даже если его запускают из командной строки, он, как правило, выполняет задачу и выводит некоторую информацию. Тем не менее PHP может быть также полезен и в качестве веб-броузера – получая доступ к определенным URL и обрабатывая их содержимое. Большинство рецептов этой главы посвящено получению доступа к URL и обработке результатов, хотя здесь обсуждаются и некоторые другие задачи, такие как использование шаблонов и обработка серверных протоколов. В PHP есть четыре способа доступа к удаленным URL. Выбор зависит от того, насколько доступ должен быть простым, управляемым и переносимым. Эти четыре способа реализуются посредством функций fopen() и fsockopen(), расширения cURL или класса HTTP_Request в PEAR.
Статьи раздела '11. Автоматизация работы с Web':
Анализ файла протокола веб-сервера
Задача Необходимо сделать расчеты на основании информации, содержащейся в файле протокола доступа к веб-серверу. Решение Откройте файл и проанализируйте каждую строку с помощью регулярного выражения, соответствующего формату ...
Выделение информации на веб-странице
Задача Требуется показать страницу, например результаты поиска, подсветив при этом некоторые слова. Решение Вызовите функцию preg_replace() с массивом шаблонов и массивом заместителей: $patterns = array('\bdog\b/', '\bcat\...
Извлечение содержимого URL с помощью метода POST
Задача Необходимо получить содержимое URL с помощью метода POST, а не метода GET, применяемого обычно. Например, требуется отправить HTML-форму. Решение Это делается при помощи расширения cURL с установленным параметром CURLO...
Извлечение ссылок из HTML-файла
Задача Необходимо извлечь все URL, определенные в документе HTML. Решение Это можно сделать при помощи функции pc_link_extractor(), показанной в примере 11.2. Пример 11.2. pc_link_extractor() function pc_link_extractor($s...
Использование шаблонов системы Smarty
Задача Необходимо разделить код и дизайн страниц. Дизайнеры смогут работать над файлами HTML, не касаясь программы PHP, а программисты смогут работать над PHP-кодом, не заботясь о дизайне. Решение Применяйте систему шаблонов....
Отладка обмена заголовками HTTP
Задача Необходимо проанализировать HTTP-запрос броузера к серверу и соответствующий HTTP-ответ. Например, сервер не выдает ожидаемого ответа на определенный запрос, поэтому требуется точно определить, какие компоненты запрашивали...
Получение содержимого HTTPS URL
Задача Необходимо получить доступ к содержимому защищенного URL. Решение С этой целью применяется расширение cURL для HTTPS URL: $c = curl_init('https://secure.example.com/accountbalance.php'); curl_setopt($c, CURLOPT_RET...
Получение содержимого URL методом GET
Задача Необходимо получить содержимое URL. Например, требуется вставить часть одной веб-страницы в содержимое другой страницы. Решение Передайте URL функции fopen() и получите содержимое страницы с помощью функции fread(): ...
Получение содержимого URL, если требуется отправить cookies
Задача Необходимо получить страницу, которая требует посылки cookie вместе с запросом к ней. Решение Используйте расширение cURL и параметр CURLOPT_COOKIE: $c = curl_init('http://www.example.com/needs-cookies.php'); curl_...
Получение содержимого URL, требующее отправки заголовков
Задача Необходимо получить содержимое URL, требующего посылки специальных заголовков вместе с запросом к данной странице. Решение Для этого применяется расширение cURL и параметр CURLOPT_HTTPHEADER: $c = curl_init('http://...
Преобразование ASCII в HTML
Задача Необходимо преобразовать простой текст в корректно отформатированный документ HTML. Решение Во-первых, закодируйте элементы с помощью функции htmlentities(), затем преобразуйте текст в различные HTML-структуры. Функция...
Преобразование HTML в ASCII
Задача Необходимо преобразовать документ HTML в читаемый, форматированный ASCII-текст. Решение Если доступны внешние программы, преобразующие HTML в ASCII, такие как lynx, то вызовите их, например так: $file = escapeshella...
Программа: Обнаружение свежих ссылок
Пример 11.6, fresh-links.php, – это модификация программы из рецепта 11.14, которая выдает список ссылок и время их последнего изменения. Если сервер, на котором находится ссылка, не сообщает время последнего изменения, то в качес...
Программа: обнаружение устаревших сылок
Программа stale-links.php выдает список ссылок на странице и их статус. Она сообщает, действительны ли ссылки, не перемещены ли они куда-нибудь, или они уже недействительны. Запустите программу, передав ей URL для сканирования ссы...
Удаление тегов HTML и PHP
Задача Необходимо удалить теги HTML и PHP из строки или файла. Решение Удаление тегов HTML и PHP из строки выполняется посредством функции strip_tags(): $html = '(a href="http://www.oreilly.com">I love computer books.(/a)'...

Страницы: 1