Используем CURL в PHP
В этом уроке мы научимся основам работы с CURL(Клиентская библиотека работы с URL) в PHP.
Немного теории. cURL.
В PHP включена поддержка libcurl — библиотеки функций, написанной Daniel Stenberg, которая позволяет взаимодействовать с множеством различных серверов по множеству различных протоколов. В настоящее время libcurl поддерживает протоколы http, https, ftp, gopher, telnet, dict, file и ldap. libcurl также умеет работать с сертификатами HTTPS, посылать запросы к HTTP серверам методами POST и PUT, закачивать файлы по протоколам HTTP и FTP , использовать прокси-серверы, cookies и аутентификацию пользователей.
PHP.
Работа с cURL всегда начинается с вызова функции curl_init(). Затем следует установить необходимые параметры с помощью функции curl_setopt() и выполнить требуемую операцию функцией curl_exec(), после чего завершить сеанс вызовом curl_close(). Рассмотрим простой пример использования cURL. С помощью следующего кода мы получим содержимое страницы, адрес которой хранится в переменной $url:
$url = "http://www.example.com/"; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL,$url); curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);//для возврата результата в виде строки, вместо прямого вывода в браузер $returned = curl_exec($ch); curl_close ($ch); echo $returned;
Допустим, нам необходимо передать какие-либо данные странице к которой мы обращаемся. Для этого установим параметр CURLOPT_POST для передачи методом POST. Пусть код страницы, к которой мы обращаемся выглядит так:
echo $_REQUEST['a']+$_REQUEST['b'];
Т.е. она будет возвращать сумму двух чисел, которые мы ей передадим. Код для получения результата:
$data=array("a"=>"6","b"=>"3"); $url = "http://example.com/testCURL.php"; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL,$url); curl_setopt($ch, CURLOPT_RETURNTRANSFER,1); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $data); $returned = curl_exec($ch); curl_close ($ch); echo $returned;
Таким образом мы получили содержимое страницы не переходя на нее.
Нет комментариев