将包装器添加到已打开的流中

时间:2014-10-06 03:34:56

标签: php http stream zlib

您可以打开这样的gzip压缩资源:

$file = 'compress.zlib://http://www.example.com/myarchive.gz';
$fp = fopen($file, 'rb');

但是假设您在使用stream_get_meta_data打开并获取其元数据之后才知道某个资源已被解压缩,您如何在已经compress.zlib之后添加fopen {1}}资源?

1 个答案:

答案 0 :(得分:0)

您可以使用 curl 来读取文件吗? http://php.net/manual/en/book.curl.php

$ch = curl_init();
curl_setopt_array($ch, array(
    CURLOPT_URL => 'http://www.example.com/myarchive.gz'
  , CURLOPT_HEADER => 0
  , CURLOPT_RETURNTRANSFER => 1
  , CURLOPT_ENCODING => 'gzip'
));
echo curl_exec($ch);