The simplest and smallest OOP wrapper for PHP cURL with no overhead.
Designed to test and work with simple RestFull and JSON APIs and execute simple queries.
$ composer require icemont/curlwrapper
File: examples/simple_request.php
useIcemont\cURL\CurlWrapper;
$curl = newCurlWrapper();
/* * Preparing request */$curl->setTimeout(5)
->setUserAgent('Mozilla/5.0 (compatible; CurlWrapper/2.0)')
->setReferer('https://example.com/')
->addHeader('API-Key: TEST_KEY')
->addData('test', 'value')
->addData('param2', 'value2')
->addDataFromArray([
'fromArray1' => 'valueA',
'fromArray2' => 'valueB',
]);
/** * Executing the query */var_dump($curl->postRequest('https://httpbin.org/post'));
echo'Request response code: ' . $curl->getLastCode() . PHP_EOL;
echo'Request error string: ' . $curl->getLastError() . PHP_EOL;useIcemont\cURL\CurlWrapper;
$curl = newCurlWrapper();
// Executing an empty POST requestvar_dump($curl->postRequest('https://httpbin.org/post'));
// Add data and execute a POST request with data sending$curl->addData('value', 'test')
->addData('value2', 'test2');
var_dump($curl->postRequest('https://httpbin.org/post'));
// Execute a simple GET request (data will be added as Query String)var_dump($curl->getRequest('https://httpbin.org/get'));
// Reset the data and execute a simple GET request again$curl->reset();
var_dump($curl->getRequest('https://httpbin.org/get'));File: examples/osticket_create_ticket.php
useIcemont\cURL\CurlWrapper;
$api = newCurlWrapper();
/** * Adding data one by one */$api->addHeader('X-API-Key: YOUR_API_KEY')
->addData('source', 'API')
->addData('name', 'Test User')
->addData('email', 'user@example.com')
->addData('ip', '127.0.0.1');
/** * Or immediately in the array */$api->addDataFromArray([
'alert' => true,
'autorespond' => true,
'subject' => 'Testing API',
'message' => 'MESSAGE HERE',
]);
/** * Executing the query as JSON */var_dump($api->jsonRequest('https://support.example.com/api/tickets.json'));
echo'Request response code: ' . $api->getLastCode() . PHP_EOL;
echo'Request error string: ' . $api->getLastError() . PHP_EOL;Open an issue on GitHub if you have any problems or suggestions.
The contents of this repository is released under the MIT license.