CurlWrapper - простейшая ООП-обертка для cURL

Мои скрипты 16:00 / 10.06.2021 685

О библиотеке CurlWrapper

CurlWrapper – это маленькая и простая ООП-обертка для PHP cURL без излишеств.
Предназначена для тестирования и работы с простыми RestFull и JSON API и выполнения простых запросов.

Никаких расширенных настроек, просто минимальный набор опций необходимый для инициализации cURL и выполнения простых запросов с разными заголовками. Написать аналогичный код можно за считанные минуты, но иногда, чтобы не тратить время хочется иметь под рукой уже готовую библиотеку для простых тестов.

Для установки с помощью Composer, используйте команду:

$ composer require icemont/curlwrapper

Примеры использования

Простые запросы POST и GET
$curl = new CurlWrapper();

// Выполнение пустого POST-запроса
var_dump($curl->request('http://example.com/post', true));

// Добавляем данные и выполняем POST-запрос с отправкой данных
$curl->addParam('data', array('foo' => 'bar'));
$curl->addParam('int', 1);
var_dump($curl->request('http://example.com/post'));

// Сброс данных и выполнение простого GET запроса
$curl->reset();
var_dump($curl->request('http://example.com/'));

 

Пример создания нового тикета через osTicket API
Файл: examples/osticket_create_ticket.php
$api = new CurlWrapper();

// Добавление именованных параметров запроса по одному
$api->addHeader('X-API-Key: YOUR_API_KEY');
$api->addParam('alert', true);
$api->addParam('autorespond', true);
$api->addParam('source', 'API');
$api->addParam('name', 'Test User');
$api->addParam('email', '[email protected]');
$api->addParam('ip', '127.0.0.1');

// Или сразу в массиве
$params = ['subject' => 'Testing API', 'message' => 'MESSAGE HERE'];
$api->addParam(false, $params);

// Выполнение запроса как JSON
var_dump($api->jsonRequest('https://support.example.com/api/tickets.json'));

// Вывести код ответа
echo 'Request response code: ' . $api->httpcode . PHP_EOL;
// Вывести строку ошибки
echo 'Request error string: ' . $api->lasterror . PHP_EOL;