cURL Callback Function
September 3rd, 2006Usually we get cURL response from curl_exec(). But we have options to get the output using callback functions. We can set callback function for both header and body output. Here is an example:
//Init curl session
$ch = curl_init();
//Set URL
curl_setopt($ch, CURLOPT_URL, ‘http://www.php.net/’);
// Set callback function for headers
curl_setopt($ch, CURLOPT_HEADERFUNCTION, ‘read_header’);
// Set callback function for body
curl_setopt($ch, CURLOPT_WRITEFUNCTION, ‘read_body’);
//Execute curl
curl_exec($ch);
//close curl session
curl_close($ch);
//Callback function for header
function read_header($ch, $string)
{
$length = strlen($string);
echo “Header: $string
\n”;
return $length;
}
//Callback function for body
function read_body($ch, $string)
{
$length = strlen($string);
echo “Received $length bytes
\n”;
return $length;
}
This script demonstrates how you can set callback functions to receive the HTTP response as it comes through. It’s really easy to use but nice feature.
Enjoy PHPing !
$rupom
Posted by MA Razzaque Rupom