Использование функций cURL в PHP

cURL — это библиотека для передачи информации с использованием различных типов протоколов. Полная форма cURL — это Клиент для URL. Для cURL существует два типа библиотек. Одна из библиотек — это curl , инструмент командной строки, который используется для отправки или получения файлов с помощью URL-адреса. HTTP, HTTPS, FTP, FTPS, TELNET, FILE и т. д., протоколы поддерживаются curl . Другая библиотека — libcurl , представленная Дэниелом Стенбергом в 1997 году. Она используется для подключения и связи с разными типами серверов с использованием разных типов протоколов. Все протоколы curl также поддерживаются libcurl . Без этих протоколов libcurl поддерживает HTTP POST, HTTP PUT, сертификаты HTTPS, загрузку по FTP, загрузку на основе HTTP, туннелирование HTTP-прокси, аутентификацию и т. Д. показывает использование функций curl из библиотеки cURL с использованием сценария PHP.

PHP/cURL

Модуль PHP, который используется для доступа к функциям библиотеки libcurl , называется PHP/cURL . Вы должны проверить, включено это или нет в PHP, прежде чем тестировать примеры этого руководства. Вы можете выполнить функцию phpinfo () , чтобы проверить, включен ли этот модуль в PHP.

Php

phpinfo();

?>

Если модуль не включен по умолчанию в PHP, выполните следующие команды для установки и включения php-curl в Ubuntu и перезапуска сервера Apache.

$ sudo apt install libapache2-mod-php php-curl
$ sudo service apache2 restart

Наиболее часто используемые функции curl

Имя функции
curl_init () Он используется для инициализации сеанса cURL.
curl_exec () Он используется для выполнения запущенного сеанса cURL.
curl_close () Он используется для закрытия сеанса cURL.
curl_error () Используется для возврата последнее сообщение об ошибке текущего сеанса cURL n.
curl_errno Используется для возврата номера последней ошибки текущего сеанса cURL.
curl_setopt () Он используется для установки параметра для передачи cURL.
curl_setopt_array () Он используется для установки нескольких параметров для передачи cURL.
curl_reset () Он используется для сброса всех параметров сеанса libcurl.
curl_pause () Он используется для приостановки соединения.
curl_version () Он используется для получения информации о версии cURL.

Пример 1. Получить информацию с любого URL-адреса

Создайте файл PHP со следующим сценарием для получения информации с определенного URL-адреса. Функция curl_init () используется здесь для инициализации сеанса cURL для определенного URL-адреса. Первая функция curl_setopt () используется для возврата содержимого страницы с заданного URL-адреса. 1 передается как значение третьего аргумента этой функции, чтобы вернуть содержимое страницы в виде строкового значения. Затем вторая функция curl_setopt () используется для исключения информации заголовка из вывода. Функция curl_exec () выполнит сеанс cURL и сохранит возвращаемое значение в переменной $ result, которая будет напечатана позже.

php

//Инициализируем сеанс cURL
$ ch = curl_init («https://linuxhint.com/»);

//Возвращаем содержимое страницы
curl_setopt ($ ch, CURLOPT_RETURNTRANSFER, 1);

//Удаляем информацию заголовка из вывода
curl_setopt ($ ch, CURLOPT_HEADER, 0);

//Выполняем сеанс cURL
$ result = curl_exec ($ ch);

//Распечатываем возвращенное значение веб-сайта
echo $ result;

//Закрываем сеанс cURL
curl_close ($ ch);

?>

Вывод:

Следующий вывод появится после выполнения вышеуказанного скрипта. «Https://linuxhint.com» указывается в скрипте как URL-адрес. Итак, содержимое этого сайта отображается.

Пример 2: Записать вывод cURL в файл

В предыдущем примере вывод скрипта показан в браузере. Но вы можете сохранить возвращаемое значение любого URL-адреса в файле также с помощью cURL. Создайте файл PHP со следующим сценарием, чтобы получить URL-адрес с помощью HTML-формы и инициализировать сеанс cURL для этого URL-адреса и сохранить содержимое страницы в текстовом файле, а не отображать его в браузере. Параметр CURLOPT_FILE используется в функции curl_setopt () для сохранения вывода после выполнения сеанса cURL в файл output.txt . Если форма отправляет неверный URL-адрес, то информация об ошибке будет записана в файл вместо содержимого страницы..

Пример cURL

Введите URL-адрес

php

//Проверяем, что кнопка отправки нажата или нет
if (isset ($ _ GET [‘url’]))
{
//Проверяем, пустой URL-адрес или нет
if ($ _ GET [ ‘url’]! = «»)
{
//Установить значение URL
$ url = $ _GET [‘url’];

//Инициализируем сеанс cURL
$ ch = curl_init ($ url);

//Открываем обработчик файла для записи в текстовый файл
$ fh = fopen («output.txt», «w»);

//Устанавливаем параметр для записи вывода в файл
curl_setopt ($ ch, CURLOPT_FILE, $ fh) ;

//Включаем информацию заголовка в файл
curl_setopt ($ ch, C URLOPT_HEADER, 1);

//Выполняем сеанс cURL
curl_exec ($ ch);

//Проверяем наличие ошибок cURL
if (curl_error ($ ch)) {
$ error = curl_errno ($ ch). «:». curl_error ($ ch);
fwrite ($ fh, $ error);
}

echo «Вывод сеанса cURL был записан в output.txt
file «;

//Закрываем сеанс cURL
curl_close ($ ch);
// Закройте файл
fclose ($ fh);
}
else
{
echo «URL-адрес не задан.»;
}
}

?>

Вывод:

После запуска скрипта появится следующая форма. Здесь действительный URL-адрес указан в качестве URL-адреса.

После нажатия кнопки отправки появится следующий вывод.

Пример 3: Установите параметр cURL с помощью массива

Если вы хотите установить несколько параметров cURL во время выполнения сеанса cURL, тогда вы необходимо использовать функцию curl_setopt_array (). Чтобы узнать об использовании этой функции, создайте файл PHP со следующим сценарием. Два параметра cURL устанавливаются с помощью переменной массива, и эта переменная передается как переменная параметра функции curl_setopt_array () .

//Определяем массив опций
$ defaults = array (
CURLOPT_URL => ‘http://example. com/’,
CURLOPT_POST => true
);

//Инициализируем сеанс cURL
$ ch = curl_init ();

//Возвращаем содержимое страницы на основе массива опций
curl_setopt_array ($ ch, $ defaults);

//Распечатываем возвращенное значение
echo curl_exec ($ ch);

?>

Вывод:

После запуска скрипта появится следующий вывод. «Http://example.com» задается в скрипте как URL-адрес.

Заключение

Простое использование cURL в PHP показано в этом руководстве с использованием различных примеров. В PHP существует множество встроенных функций cURL для выполнения различных типов задач. Это руководство поможет читателям узнать об основных способах использования cURL в PHP.

Оцените статью
nanomode.ru
Добавить комментарий