Заявка за друг сървър или уеб сайт с помощта на PHP
Приветствия към вас, скъпи читатели webcodius.ru блог. По време на разработването на различни уеб услуги от време на време има нужда да се събират различни от информация от други сайтове. Т.е. изисква да се направи разбор сайтове. Разбор функция - бързо и автоматизирано събиране на данни и съдържание от сайта. Например, често се налага да получи стоките, включително изображения, от различни онлайн магазини, в автоматичен режим. В този случай, и полезен механизъм за разбор сайтове.
Основно се използва в PHP са два начина да получите съдържание от сайта.
1. Как да - да поиска помощта на file_get_contents () функция.
Feature ви позволява да получите на съдържанието на даден файл в низ и има следния синтаксис:
низови file_get_contents (низ име [, булев use_include_path [, контекстни ресурс [, Int компенсирани [, Int maxlen]]]])
където името на файла - път до файла.
В случай на неуспех, функцията връща FALSE.
2. Използване на CURL библиотеката.
Ако използвате CURL код става все по-тромава, но има и по-различни възможности, като библиотеката е изключително гъвкав и позволява да получите и публикувайте искания.
Първи съдържание на страницата, е разделен на четири стъпки:
- сесия инициализация чрез curl_init (функция);
- определяне на съответните параметри, чрез curl_setopt (функция);
- заявки curl_exec функция ();
- Завършване на функция curl_close ().
Ако искате да се изпълни искането на POST към отдалечения сайт. е необходимо да се CURLOPT_POST опция е настроена на истина. и CURLOPT_POSTFIELDS опция за поставяне на предадените данни:
В резултат на това и двата метода в променлив резултат $ получава съдържанието на посочената страница като HTML код линия. След това можете да отидете директно на анализирането на страницата, което е, да извлича необходимите данни от съдържанието на линията. Например, за да получите всички изображения от страницата или да извлича съдържанието на текста.
За разбор, можете да използвате регулярни изрази, но това е по-добре да използвате вградения в библиотеката или DOMDocument SimpleHTMLDOM библиотеката.
Това е всичко, докато се срещнем отново!