Php CURL, What is CURL and how to use it?

Hello friends, Today we will learn about php CURL. CURL is used to make HTTP requests

cURL is a library that lets you make HTTP requests in PHP. Everything you need to know about it (and most other extensions) can be found in the PHP manual.

The cURL stands for ‘Client for URLs’, originally with URL spelled in uppercase to make it obvious that it deals with URLs. The cURL project has two products libcurl and curl.

  • libcurl: A free and easy-to-use client-side URL transfer library, supporting FTP, TPS, HTTP, HTTPS, GOPHER, TELNET, DICT, FILE, and LDAP. libcurl supports TTPS certificates, HTTP POST, HTTP PUT, FTP uploading, kerberos, HTTP based upload, proxies, cookies, user & password authentication, file transfer resume, HTTP proxy tunneling and many more. libcurl is free, thread-safe, IPv6 compatible, feature rich, well supported and fast.
  • curl: A command line tool for getting or sending files using URL syntax. Since curl uses libcurl, it supports a range of common internal protocols, currently including HTTP, HTTPS, FTP, FTPS, GOPHER, TELNET, DICT, and FILE.

What is PHP cURL?
The module for PHP that makes it possible for PHP programs to access curl functions within PHP. cURL support is enabled in PHP, the phpinfo() function will display in its output. You are requested to check it before writing your first simple programme in PHP.

<?php phpinfo(); ?> 

Simple Uses: The simplest and most common request/operation made using HTTP is to get a URL. The URL itself can refer to a webpage, an image or a file. The client issues a GET request to the server and receives the document it asked for.

Some basic cURL functions:

  • The curl_init() function will initialize a new session and return a cURL handle.
  • curl_exec($ch) function should be called after initialize a cURL session and all the options for the session are set. Its purpose is simply to execute the predefined CURL session (given by ch).
  • curl_setopt($ch, option, value) set an option for a cURL session identified by the ch parameter. Option specifies which option is to set, and value specifies the value for the given option.
  • curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1) return page contents. If set 0 then no output will be returned.
  • curl_setopt($ch, CURLOPT_URL, $url) pass URL as a parameter. This is your target server website address. This is the URL you want to get from the internet.
  • curl_exec($ch) grab URL and pass it to the variable for showing output.
  • curl_close($ch) close curl resource, and free up system resources.Hello friends, Today we will learn about php CURL. CURL is used to make HTTP requestsThe curl_init() function will initialize a new session and return a cURL handle.
  • curl_exec($ch) function should be called after initialize a cURL session and all the options for the session are set. Its purpose is simply to execute the predefined CURL session (given by ch).
  • curl_setopt($ch, option, value) set an option for a cURL session identified by the ch parameter. Option specifies which option is to set, and value specifies the value for the given option.
  • curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1) return page contents. If set 0 then no output will be returned.
  • curl_setopt($ch, CURLOPT_URL, $url) pass URL as a parameter. This is your target server website address. This is the URL you want to get from the internet.
  • curl_exec($ch) grab URL and pass it to the variable for showing output.
  • curl_close($ch) close curl resource, and free up system resources.

Get Request Example

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://w3path.com');
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
$body = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);

echo 'Status code: ', $httpCode;
echo "<br />";
echo "<br />";
echo 'Body content:';
echo "<br />";
print_r($body);

Output:

Post Request Example

<?php 


$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://reqres.in/api/users');
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);


$postData = http_build_query([
    "name" => "morpheus",
    "job" => "leader"
]);

curl_setopt($ch,CURLOPT_POST,true);
curl_setopt($ch,CURLOPT_POSTFIELDS, $postData);

$body = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);

// $response = curl_exec($ch);
echo 'Status code: ', $httpCode;
echo "<br />";
echo "<br />";
echo 'Body content:';
echo "<br />";
print_r($body);

Recommended Posts:

Be First to Comment

Leave a Reply

Your email address will not be published. Required fields are marked *