Библиотека CURL (Client URLs) была разработана Даниелом Стенбергом (Daniel Stenberg) в 1998 году как утилита, работающая из командной строки.
Библиотека, позволяет передавать файлы на удаленный компьютер, используя множество Интернет протоколов. Она имеет очень гибкую настройку и позволяют выполнить практически любой удаленный запрос.
CURL поддерживает протоколы HTTP, HTTPS, FTP, FTPS, DICT, TELNET, LDAP, FILE, и GOPHER, так же как HTTP-post, HTTP-put, cookies, FTP-закачкe, продолжение прерванной передачи файлов, пароли, номера портов, сертификаты SSL, Kerberos и прокси.
Используя CURL, web-сервер может выступать полноценным клиентом любого основанного на HTTP протоколе сервисе, к примеру: XML-RPC, SOAP, или WebDAV.
В общем виде использование библиотеки сводиться к четырем шагам:
- Создание ресурса CURL c помощью функции curl_init.
- Установка параметров c помощью функции curl_setopt.
- Выполнение запроса c помощью функции curl_exec.
- Освобождение ресурса CURL c помощью функции curl_close.
Простой пример использования CURL
-
//Иницализация библиотеки curl.
-
if ($ch = @curl_init())
-
{
-
//Устанавливаем URL запроса
-
@curl_setopt($ch, CURLOPT_URL, 'http://blog.yousoft.ru/');
-
//При значении true CURL включает в вывод заголовки.
-
@curl_setopt($ch, CURLOPT_HEADER, false);
-
//Куда помещать результат выполнения запроса:
-
// false – в стандартный поток вывода,
-
// true – в виде возвращаемого значения функции curl_exec.
-
@curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
-
//Максимальное время ожидания в секундах
-
@curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30);
-
//Установим значение поля User-agent
-
@curl_setopt($ch, CURLOPT_USERAGENT, 'PHP Bot (http://blog.yousoft.ru)');
-
//Выполнение запроса
-
$data = @curl_exec($ch);
-
//Вывести полученные данные
-
echo $data;
-
//Особождение ресурса
-
@curl_close($ch);
-
}
-
?>