Skip to content
Advertisement

Is it possible to get partial response using PHP cURL?

Here is my code

 $url = "partial_response.php";
 $sac_curl = curl_init();
 curl_setopt($sac_curl, CURLOPT_HTTPGET, true);
 curl_setopt($sac_curl, CURLOPT_URL, $url);
 curl_setopt($sac_curl, CURLOPT_RETURNTRANSFER, true);
 curl_setopt($sac_curl, CURLOPT_HEADER, false);
 curl_setopt($sac_curl, CURLOPT_TIMEOUT, 11);
 $resp = curl_exec($sac_curl); 
 curl_close($sac_curl);
 echo $resp;

Partial_response.php

header( 'Content-type: text/html; charset=utf-8' );
echo 'Job waiting ...<br />';
for( $i = 0 ; $i &#60; 10 ; $i++ )
{
echo $i . '<br/>';
flush();
ob_flush();
sleep(1);
}
echo 'End ...<br/>';

From the about code am trying to get a partial response from partial_response.php. what I want is, I need curl to return me “Job waiting..” alone instead of waiting for the partial_response.php to complete the loop and return the entire data. so when I reduce CURLOPT_TIMEOUT below 11 i dont get any response at all. Kindly clarify my doubt. Thanks in advance.

Advertisement

Answer

I later realized that cURL could not do what I want, I used stream_context_get_options to achieve what I wanted. Here it is, http://www.php.net/manual/en/function.stream-context-get-options.php.

User contributions licensed under: CC BY-SA
2 People found this is helpful
Advertisement