php curl
0.8.1
{
"require" : {
"sylouuu/php-curl" : "0.8.*"
}
} require_once ' ./vendor/autoload.php ' ; // Namespace shortcut
use sylouuu Curl Method as Curl ;
// Template
$ request = new Curl < METHOD_NAME >( string $ url [, array $ options ] );Les méthodes sont:
Get()Head()Options()Post()Put()Patch()Delete()$options [
' data ' => [ // Data to send, available for `Post`, `Put` and `Patch`
' foo ' => ' bar '
],
' headers ' => [ // Additional headers (optional)
' Authorization: foobar '
],
' ssl ' => ' /cacert.pem ' , // Use it for SSL (optional)
' is_payload ' => true , // `true` for sending a payload (JSON-encoded data, optional)
' autoclose ' => true // Is the request must be automatically closed (optional)
] // Send a request
$ request -> send ();
// HTTP status code
$ request -> getStatus ();
// HTTP header
$ request -> getHeader ();
// HTTP body response
$ request -> getResponse ();
// Used cURL options
$ request -> getCurlOptions ();
// Set a cURL option
$ request -> setCurlOption ( CURLOPT_SOMETHING , $ value );
// Manually close the handle (necessary when `autoclose => false` is used)
$ request -> close ();Basique:
// Namespace shortcut
use sylouuu Curl Method as Curl ;
// Standard GET request
$ request = new Curl Get ( ' http://domain.com ' );
// Send this request
$ request -> send ();
echo $ request -> getResponse (); // body response
echo $ request -> getStatus (); // HTTP status codeEnvoyer une charge utile:
// Namespace shortcut
use sylouuu Curl Method as Curl ;
// JSON-encoded POST request
$ request = new Curl Post ( $ this -> endpoint , [
' data ' => [
' name ' => ' foo ' ,
' email ' => ' [email protected] '
],
// With 'is_payload' => true
// You don't have to json_encode() your array of data
// Moreover, the appropriate headers will be set for you
' is_payload ' => true
]);
// Send this request
$ request -> send ();
echo $ request -> getResponse (); // body response
echo $ request -> getStatus (); // HTTP status codeClôture manuel:
// Namespace shortcut
use sylouuu Curl Method as Curl ;
// Set `autoclose` option to `false`
$ request = new Curl Get ( ' http://domain.com ' , [
' autoclose ' => false
]);
// Send this request
$ request -> send ();
// Now you can retrieve a cURL info as the handle is still open
$ request -> getCurlInfo ( CURLINFO_SOMETHING );
echo $ request -> getResponse ();
// Manually close the handle
$ request -> close ();Sur le répertoire du projet:
composer install pour récupérer phpunitphpunit pour exécuter des tests 2015-08-25 - 0,8.1
2015-07-03 - 0.8.0
is_payload pour effectuer une demande avec des données codées JSONssl fixe2014-10-23 - 0,7.1
Post() qui n'a pas envoyé de données dans certains cas2014-08-01 - 0.7.0 (BC Break)
Method , les méthodes sont maintenant dans sylouuuCurlMethod2014-05-30 - 0.6.1
data n'est pas spécifiée pour Post Put Patch2014-05-22 - 0,6.0 (BC Break)
url déplacée vers le premier paramètre de constructeur2014-05-20 - 0.5.0 (BC Break)
php-rest-client à php-curlautoclose2014-05-13 - 0.4.0 (BC Break)
RESTClient.class.php à RESTClient.phpRESTClient.php vers /srcRESTClientTest.php vers /testsHEAD , OPTIONS et du support PATCHgetHeadergetJSON à getResponsesylouuugulp2014-05-09 - 0.3.0
ssl ajoutée2014-04-06 - 0.2.1
2014-04-04 - 0.2.0
2014-04-01 - 0.1.0
2014-03-24 - 0.0.2
$api_url comme paramètre de constructeur2014-02-05 - 0.0.1