Using curl_setopt() in PHP: Syntax, Parameters, Return Value, and Example
This article explains the PHP cURL extension’s curl_setopt() function, covering its syntax, parameter meanings, boolean return value, and provides a complete example that demonstrates sending a GET request, handling responses, and closing the cURL session.
cURL is a powerful PHP extension for sending and receiving HTTP requests, and the curl_setopt() function is essential for configuring a cURL session.
Syntax
The syntax of curl_setopt() is:
bool curl_setopt ( resource $ch , int $option , mixed $value )Parameter Explanation
$ch : the cURL handle created by curl_init() .
$option : the cURL option to set.
$value : the value for the option.
Return Value
The function returns a boolean indicating whether the option was set successfully.
Example
The following example uses curl_setopt() to send a GET request to a specified URL and retrieve the response:
// Initialize cURL session
$ch = curl_init();
// Set the URL to request
curl_setopt($ch, CURLOPT_URL, "https://api.example.com/data");
// Set request method to GET
curl_setopt($ch, CURLOPT_HTTPGET, true);
// Return the response as a string
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// Set timeout
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
// Execute the request
$response = curl_exec($ch);
// Check for failure
if ($response === FALSE) {
echo "Request failed: " . curl_error($ch);
} else {
// Process response data
echo $response;
}
// Close the cURL session
curl_close($ch);Explanation
The script first creates a cURL handle with curl_init() , then sets several options with curl_setopt() , including CURLOPT_URL , CURLOPT_HTTPGET , CURLOPT_RETURNTRANSFER , and CURLOPT_TIMEOUT . It executes the request using curl_exec() , handles errors with curl_error() , and finally closes the session with curl_close() .
Summary
The curl_setopt() function is a key part of the PHP cURL extension, allowing developers to configure various aspects of an HTTP request such as URL, method, timeout, and response handling.
Java learning material
C language learning material
Frontend learning material
C++ learning material
PHP learning material
php中文网 Courses
php中文网's platform for the latest courses and technical articles, helping PHP learners advance quickly.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.