curlx
Version 0.0.4
curlx adalah perpustakaan dasar HTTP yang ditulis dalam PHP untuk manusia dan tidak memiliki ketergantungan, bekerja dengan PHP 8.2+.
curlx memungkinkan Anda mengirim GET , POST , PUT , DELETE DAN METODE HTTP LAINNYA. Anda dapat menambahkan header, data formulir, data json, dan parameter dengan array sederhana, dan mengakses data respons dengan cara yang sama. Anda dapat menambahkan TUNNEL HTTP dengan PROXY, ROTASI server seperti LUMINATI, APIFY, IPVANISH.
# GET
$ curlx -> get ( " https://api.myip.com/ " );
# POST
$ curlx -> post ( " https://api.myip.com/ " , " my_form_id=test&hello=mom " );
# CUSTOM
$ curlx -> custom ( " https://api.myip.com/ " , " HEAD " );
$ curlx -> run ();
# PROXY (http/s, socks4, socks5)
$ server = [
" method " => " tunnel " ,
" server " => " 47.254.145.99:3128 "
];
# LIMINATI valid syntax example
$ session => mt_rand ();
$ server = [
" method " => " custom " ,
" server " = "http: //zproxy.lum-superproxy.io:22225",
" auth" => " lum-customer-hl_876f552a-zone-static-route_err-pass_dyn-country-RU-session- $ session :my_ultra_secret_password "
];
# APIFY valid syntax example
$ server = [
" method " => " custom " ,
" server " = "http: //proxy.apify.com:8000",
" auth" => " auto:my_ultra_secret_password "
];
# IPVANISH valid syntax example
$ server = [
" method " => " CUSTOM " ,
" server " => " akl-c12.ipvanish.com:1080 " ,
" auth " => " my_zone_customer_id:my_zone_customer_password "
];
# Simple GET
$ test0 = $ curlx -> get ( " http://httpbin.org/get " );
# GET with Custom Headers
$ headers = array (
" Host: api.myip.com " ,
" my-custom-header: my-header-value "
);
$ test1 = $ curlx -> get ( " http://httpbin.org/get " , $ headers );
# GET with Headers and Cookie File
$ cookie = uniqid ();
$ test2 = $ curlx -> get ( " http://httpbin.org/get " , $ headers , $ cookie );
#GET with Headers, Cookie and Proxy Tunnel
$ server = [
" method " => " tunnel " ,
" server " => " 47.254.145.99:3128 "
];
$ test3 = $ curlx -> get ( " http://httpbin.org/get " , $ headers , $ cookie , $ server );
# After all requests were complete, you can delete the cookie file, Only when you use the $cookie parameter.
$ curlx -> deleteCookie ();
# Response status of the request
var_dump ( $ test3 -> isSuccess ());
// bool(true)
# Status code of the request
var_dump ( $ test3 -> getStatusCode ());
// int(200)
# Content type of the request
var_dump ( $ test3 -> getHeaders ()[ " response " ][ " content-type " ]);
// string(24) "text/html; charset=UTF-8"
# Body response of the request
var_dump ( $ test3 -> getBody ());
// string(51) "{...}"
#Simple POST with NULL data
$ test0 = $ curlx -> post ( " http://httpbin.org/post " );
#POST with Data-form and Custom Headers
$ headers = array (
" Host: httpbin.org " ,
" my-custom-header: my-header-value "
);
$ test1 = $ curlx -> post ( " http://httpbin.org/post " , " test_ID=666&hello=mom " , $ headers );
#POST with Json-Data and Custom Headers
$ data = array (
" hello " => " mom " ,
" key " => " value "
);
$ test2 = $ curlx -> post ( " http://httpbin.org/post " , $ data , $ headers );
#POST with Custom-Data, Custom Headers, and Cookie
$ cookie = uniqid ();
$ test3 = $ curlx -> post ( " http://httpbin.org/post " , $ data , $ headers , $ cookie );
#POST with Json-Data, Custom Headers, Cookie and Proxy Tunnel
$ server = [
" method " => " tunnel " ,
" server " => " 47.254.145.99:3128 "
];
$ test4 = $ curlx -> post ( " http://httpbin.org/post " , $ data , $ headers , $ cookie , $ server );
#After all requests were complete, you can delete the cookie file, Only when you use the $cookie parameter.
$ curlx -> deleteCookie ();
# Response status of the request
var_dump ( $ test3 -> isSuccess ());
// bool(true)
# Status code of the request
var_dump ( $ test4 -> getStatusCode ());
// int(200)
# Content type of the request
var_dump ( $ test4 -> getHeaders ()[ " response " ][ " content-type " ]);
// string(24) "..."
# Body response of the request
var_dump ( $ test4 -> getBody ());
// string(51) "{...}"
// Set a custom option to current CURL structure
$ curlx -> setOpt ([ CURLOPT_HTTPAUTH => CURLAUTH_BEARER ]);
/**
* Show all data process|errors of the request
*
* debug(): now supports cli and json print
*
* Recommended for develop work space
*/
$ curlx -> debug ();
Untuk menginstal kode sumber:
$ git clone https://github.com/devblack/curlx.git
Dan sertakan dalam skrip Anda:
require_once " curlx .php";
$ curlx = new curlx ();
Alternatifnya, Anda dapat mengambil tarball atau zipball:
$ curl -L https://github.com/devblack/curlx/tarball/master | tar xzv
(or)
$ wget https://github.com/devblack/curlx/tarball/master -O - | tar xzv
master
(atau cabang darinya)