├── .github └── FUNDING.yml ├── .gitignore ├── 01_Basics ├── 01_Request_Methods │ ├── 01_Get │ │ ├── console.sh │ │ ├── curl-ext.php │ │ ├── guzzle-lib.php │ │ └── http-request.http │ ├── 02_Post_Raw_Data │ │ ├── console.sh │ │ ├── curl-ext.php │ │ └── guzzle-lib.php │ ├── 03_Post_Form_Data │ │ ├── console.sh │ │ ├── curl-ext.php │ │ └── guzzle-lib.php │ ├── 04_Put │ │ ├── console.sh │ │ ├── curl-ext.php │ │ └── guzzle-lib.php │ ├── 05_Patch │ │ ├── console.sh │ │ ├── curl-ext.php │ │ └── guzzle-lib.php │ └── 06_Delete │ │ ├── console.sh │ │ ├── curl-ext.php │ │ └── guzzle-lib.php ├── 02_Headers │ ├── 01_Send_Request_Headers │ │ ├── console.sh │ │ ├── curl-ext.php │ │ └── guzzle-lib.php │ └── 02_Get_Response_Headers │ │ ├── console.sh │ │ ├── curl-ext.php │ │ └── guzzle-lib.php ├── 03_Request_Stats │ ├── console.sh │ ├── curl-ext.php │ └── guzzle-lib.php ├── 04_Debug_Request │ ├── 01_Output_Debug_Info_To_Stderr │ │ ├── console.sh │ │ ├── curl-ext.php │ │ └── guzzle-lib.php │ └── 02_Output_Debug_Info_To_File │ │ ├── console.sh │ │ ├── curl-ext.php │ │ └── guzzle-lib.php ├── 05_Error_Catching │ ├── console.sh │ ├── curl-ext.php │ └── guzzle-lib.php ├── 06_Follow_Redirects │ ├── console.sh │ ├── curl-ext.php │ └── guzzle-lib.php ├── 07_Timeouts │ ├── console.sh │ ├── curl-ext.php │ └── guzzle-lib.php ├── 08_Set_Http_Version │ ├── console.sh │ ├── curl-ext.php │ └── guzzle-lib.php ├── 09_Get_Curl_Version │ ├── console.sh │ └── curl-ext.php ├── 10_Set_User_Agent │ ├── console.sh │ ├── curl-ext.php │ └── guzzle-lib.php ├── 12_Redirect_Location_History │ ├── console.sh │ ├── curl-ext.php │ └── guzzle-lib.php └── 13_Set_Http_Referer │ ├── console.sh │ ├── curl-ext.php │ └── guzzle-lib.php ├── 02_Advanced ├── 01_Files │ ├── 01_Upload │ │ ├── console.sh │ │ ├── curl-ext.php │ │ ├── guzzle-lib.php │ │ └── resource │ │ │ └── file.txt │ ├── 02_Upload_Multiple │ │ ├── console.sh │ │ ├── curl-ext.php │ │ ├── guzzle-lib.php │ │ └── resource │ │ │ ├── file.txt │ │ │ └── github-icon.png │ ├── 03_Upload_Array_Of_Files │ │ ├── console.sh │ │ ├── curl-ext.php │ │ ├── guzzle-lib.php │ │ └── resource │ │ │ ├── file-1.txt │ │ │ ├── file-2.txt │ │ │ └── github-icon.png │ └── 04_Download │ │ ├── console.sh │ │ ├── curl-ext.php │ │ ├── guzzle-lib.php │ │ └── resource │ │ └── image.jpeg ├── 02_Auth │ ├── 01_Basic_Auth │ │ ├── console.sh │ │ ├── curl-ext.php │ │ └── guzzle-lib.php │ ├── 02_Digest_Auth │ │ ├── console.sh │ │ ├── curl-ext.php │ │ └── guzzle-lib.php │ └── 03_Bearer_Auth │ │ ├── console.sh │ │ ├── curl-ext.php │ │ └── guzzle-lib.php └── 03_Cookies │ ├── 01_Send_Cookies_From_String │ ├── console.sh │ ├── curl-ext.php │ └── guzzle-lib.php │ ├── 02_Set_Cookie_Options │ └── guzzle-lib.php │ ├── 03_Send_Cookies_From_File │ ├── console.sh │ ├── curl-ext.php │ ├── guzzle-lib.php │ └── resource │ │ ├── cookie-jar.txt │ │ └── guzzle-cookie-jar.json │ └── 04_Save_Response_Cookies_To_File │ ├── console.sh │ ├── curl-ext.php │ ├── guzzle-lib.php │ └── resource │ └── .gitignore ├── CODE_OF_CONDUCT.md ├── LICENSE ├── README.md ├── composer.json ├── composer.lock ├── console ├── docker-compose.yml ├── docker └── php-fpm │ └── Dockerfile └── run /.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | custom: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=LYNYHKQJXGD36&source=url 2 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | /.idea 2 | /vendor -------------------------------------------------------------------------------- /01_Basics/01_Request_Methods/01_Get/console.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | curl --request GET "https://postman-echo.com/get?foo=bar" -------------------------------------------------------------------------------- /01_Basics/01_Request_Methods/01_Get/curl-ext.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andriichuk/php-curl-cookbook/HEAD/01_Basics/01_Request_Methods/01_Get/curl-ext.php -------------------------------------------------------------------------------- /01_Basics/01_Request_Methods/01_Get/guzzle-lib.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andriichuk/php-curl-cookbook/HEAD/01_Basics/01_Request_Methods/01_Get/guzzle-lib.php -------------------------------------------------------------------------------- /01_Basics/01_Request_Methods/01_Get/http-request.http: -------------------------------------------------------------------------------- 1 | GET https://postman-echo.com/get?foo=bar -------------------------------------------------------------------------------- /01_Basics/01_Request_Methods/02_Post_Raw_Data/console.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andriichuk/php-curl-cookbook/HEAD/01_Basics/01_Request_Methods/02_Post_Raw_Data/console.sh -------------------------------------------------------------------------------- /01_Basics/01_Request_Methods/02_Post_Raw_Data/curl-ext.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andriichuk/php-curl-cookbook/HEAD/01_Basics/01_Request_Methods/02_Post_Raw_Data/curl-ext.php -------------------------------------------------------------------------------- /01_Basics/01_Request_Methods/02_Post_Raw_Data/guzzle-lib.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andriichuk/php-curl-cookbook/HEAD/01_Basics/01_Request_Methods/02_Post_Raw_Data/guzzle-lib.php -------------------------------------------------------------------------------- /01_Basics/01_Request_Methods/03_Post_Form_Data/console.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andriichuk/php-curl-cookbook/HEAD/01_Basics/01_Request_Methods/03_Post_Form_Data/console.sh -------------------------------------------------------------------------------- /01_Basics/01_Request_Methods/03_Post_Form_Data/curl-ext.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andriichuk/php-curl-cookbook/HEAD/01_Basics/01_Request_Methods/03_Post_Form_Data/curl-ext.php -------------------------------------------------------------------------------- /01_Basics/01_Request_Methods/03_Post_Form_Data/guzzle-lib.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andriichuk/php-curl-cookbook/HEAD/01_Basics/01_Request_Methods/03_Post_Form_Data/guzzle-lib.php -------------------------------------------------------------------------------- /01_Basics/01_Request_Methods/04_Put/console.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andriichuk/php-curl-cookbook/HEAD/01_Basics/01_Request_Methods/04_Put/console.sh -------------------------------------------------------------------------------- /01_Basics/01_Request_Methods/04_Put/curl-ext.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andriichuk/php-curl-cookbook/HEAD/01_Basics/01_Request_Methods/04_Put/curl-ext.php -------------------------------------------------------------------------------- /01_Basics/01_Request_Methods/04_Put/guzzle-lib.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andriichuk/php-curl-cookbook/HEAD/01_Basics/01_Request_Methods/04_Put/guzzle-lib.php -------------------------------------------------------------------------------- /01_Basics/01_Request_Methods/05_Patch/console.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andriichuk/php-curl-cookbook/HEAD/01_Basics/01_Request_Methods/05_Patch/console.sh -------------------------------------------------------------------------------- /01_Basics/01_Request_Methods/05_Patch/curl-ext.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andriichuk/php-curl-cookbook/HEAD/01_Basics/01_Request_Methods/05_Patch/curl-ext.php -------------------------------------------------------------------------------- /01_Basics/01_Request_Methods/05_Patch/guzzle-lib.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andriichuk/php-curl-cookbook/HEAD/01_Basics/01_Request_Methods/05_Patch/guzzle-lib.php -------------------------------------------------------------------------------- /01_Basics/01_Request_Methods/06_Delete/console.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andriichuk/php-curl-cookbook/HEAD/01_Basics/01_Request_Methods/06_Delete/console.sh -------------------------------------------------------------------------------- /01_Basics/01_Request_Methods/06_Delete/curl-ext.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andriichuk/php-curl-cookbook/HEAD/01_Basics/01_Request_Methods/06_Delete/curl-ext.php -------------------------------------------------------------------------------- /01_Basics/01_Request_Methods/06_Delete/guzzle-lib.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andriichuk/php-curl-cookbook/HEAD/01_Basics/01_Request_Methods/06_Delete/guzzle-lib.php -------------------------------------------------------------------------------- /01_Basics/02_Headers/01_Send_Request_Headers/console.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andriichuk/php-curl-cookbook/HEAD/01_Basics/02_Headers/01_Send_Request_Headers/console.sh -------------------------------------------------------------------------------- /01_Basics/02_Headers/01_Send_Request_Headers/curl-ext.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andriichuk/php-curl-cookbook/HEAD/01_Basics/02_Headers/01_Send_Request_Headers/curl-ext.php -------------------------------------------------------------------------------- /01_Basics/02_Headers/01_Send_Request_Headers/guzzle-lib.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andriichuk/php-curl-cookbook/HEAD/01_Basics/02_Headers/01_Send_Request_Headers/guzzle-lib.php -------------------------------------------------------------------------------- /01_Basics/02_Headers/02_Get_Response_Headers/console.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andriichuk/php-curl-cookbook/HEAD/01_Basics/02_Headers/02_Get_Response_Headers/console.sh -------------------------------------------------------------------------------- /01_Basics/02_Headers/02_Get_Response_Headers/curl-ext.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andriichuk/php-curl-cookbook/HEAD/01_Basics/02_Headers/02_Get_Response_Headers/curl-ext.php -------------------------------------------------------------------------------- /01_Basics/02_Headers/02_Get_Response_Headers/guzzle-lib.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andriichuk/php-curl-cookbook/HEAD/01_Basics/02_Headers/02_Get_Response_Headers/guzzle-lib.php -------------------------------------------------------------------------------- /01_Basics/03_Request_Stats/console.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andriichuk/php-curl-cookbook/HEAD/01_Basics/03_Request_Stats/console.sh -------------------------------------------------------------------------------- /01_Basics/03_Request_Stats/curl-ext.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andriichuk/php-curl-cookbook/HEAD/01_Basics/03_Request_Stats/curl-ext.php -------------------------------------------------------------------------------- /01_Basics/03_Request_Stats/guzzle-lib.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andriichuk/php-curl-cookbook/HEAD/01_Basics/03_Request_Stats/guzzle-lib.php -------------------------------------------------------------------------------- /01_Basics/04_Debug_Request/01_Output_Debug_Info_To_Stderr/console.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andriichuk/php-curl-cookbook/HEAD/01_Basics/04_Debug_Request/01_Output_Debug_Info_To_Stderr/console.sh -------------------------------------------------------------------------------- /01_Basics/04_Debug_Request/01_Output_Debug_Info_To_Stderr/curl-ext.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andriichuk/php-curl-cookbook/HEAD/01_Basics/04_Debug_Request/01_Output_Debug_Info_To_Stderr/curl-ext.php -------------------------------------------------------------------------------- /01_Basics/04_Debug_Request/01_Output_Debug_Info_To_Stderr/guzzle-lib.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andriichuk/php-curl-cookbook/HEAD/01_Basics/04_Debug_Request/01_Output_Debug_Info_To_Stderr/guzzle-lib.php -------------------------------------------------------------------------------- /01_Basics/04_Debug_Request/02_Output_Debug_Info_To_File/console.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andriichuk/php-curl-cookbook/HEAD/01_Basics/04_Debug_Request/02_Output_Debug_Info_To_File/console.sh -------------------------------------------------------------------------------- /01_Basics/04_Debug_Request/02_Output_Debug_Info_To_File/curl-ext.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andriichuk/php-curl-cookbook/HEAD/01_Basics/04_Debug_Request/02_Output_Debug_Info_To_File/curl-ext.php -------------------------------------------------------------------------------- /01_Basics/04_Debug_Request/02_Output_Debug_Info_To_File/guzzle-lib.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andriichuk/php-curl-cookbook/HEAD/01_Basics/04_Debug_Request/02_Output_Debug_Info_To_File/guzzle-lib.php -------------------------------------------------------------------------------- /01_Basics/05_Error_Catching/console.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andriichuk/php-curl-cookbook/HEAD/01_Basics/05_Error_Catching/console.sh -------------------------------------------------------------------------------- /01_Basics/05_Error_Catching/curl-ext.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andriichuk/php-curl-cookbook/HEAD/01_Basics/05_Error_Catching/curl-ext.php -------------------------------------------------------------------------------- /01_Basics/05_Error_Catching/guzzle-lib.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andriichuk/php-curl-cookbook/HEAD/01_Basics/05_Error_Catching/guzzle-lib.php -------------------------------------------------------------------------------- /01_Basics/06_Follow_Redirects/console.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andriichuk/php-curl-cookbook/HEAD/01_Basics/06_Follow_Redirects/console.sh -------------------------------------------------------------------------------- /01_Basics/06_Follow_Redirects/curl-ext.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andriichuk/php-curl-cookbook/HEAD/01_Basics/06_Follow_Redirects/curl-ext.php -------------------------------------------------------------------------------- /01_Basics/06_Follow_Redirects/guzzle-lib.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andriichuk/php-curl-cookbook/HEAD/01_Basics/06_Follow_Redirects/guzzle-lib.php -------------------------------------------------------------------------------- /01_Basics/07_Timeouts/console.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andriichuk/php-curl-cookbook/HEAD/01_Basics/07_Timeouts/console.sh -------------------------------------------------------------------------------- /01_Basics/07_Timeouts/curl-ext.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andriichuk/php-curl-cookbook/HEAD/01_Basics/07_Timeouts/curl-ext.php -------------------------------------------------------------------------------- /01_Basics/07_Timeouts/guzzle-lib.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andriichuk/php-curl-cookbook/HEAD/01_Basics/07_Timeouts/guzzle-lib.php -------------------------------------------------------------------------------- /01_Basics/08_Set_Http_Version/console.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andriichuk/php-curl-cookbook/HEAD/01_Basics/08_Set_Http_Version/console.sh -------------------------------------------------------------------------------- /01_Basics/08_Set_Http_Version/curl-ext.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andriichuk/php-curl-cookbook/HEAD/01_Basics/08_Set_Http_Version/curl-ext.php -------------------------------------------------------------------------------- /01_Basics/08_Set_Http_Version/guzzle-lib.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/andriichuk/php-curl-cookbook/HEAD/01_Basics/08_Set_Http_Version/guzzle-lib.php -------------------------------------------------------------------------------- /01_Basics/09_Get_Curl_Version/console.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | curl --version -------------------------------------------------------------------------------- /01_Basics/09_Get_Curl_Version/curl-ext.php: -------------------------------------------------------------------------------- 1 |