Decode gzipped web page retrieved via cURL in PHP

Ian picture Ian · Nov 22, 2008 · Viewed 45.2k times · Source

I'm retrieving a gzipped web page via curl, but when I output the retrieved content to the browser I just get the raw gzipped data. How can I decode the data in PHP?

One method I found was to write the content to a tmp file and then ...

$f = gzopen($filename,"r");
$content = gzread($filename,250000);
gzclose($f);

.... but man, there's got to be a better way.

Edit: This isn't a file, but a gzipped html page returned by a web server.

Answer

Jonas Lejon picture Jonas Lejon · May 17, 2010

I use curl and:

curl_setopt($ch,CURLOPT_ENCODING , "gzip");