Php readgzfile和ob_end_flush

Php readgzfile和ob_end_flush,php,gzip,Php,Gzip,我正在尝试gunzip一个xml文件,并将内容保存在$d变量中。 我看到这个文件,可以在控制台中解压缩它 但下面的代码似乎是错误的。 我已经打印了ob\u get\u length以控制输出缓冲区。这给了我一个数字(即14285)。但是变量$d是空的。 代码如下: $g = tempnam('/tmp','ff'); echo $g; $b = @file_put_contents($g, $str); @ob_start(); @readgzfile

我正在尝试
gunzip
一个xml文件,并将内容保存在
$d
变量中。 我看到这个文件,可以在控制台中解压缩它

但下面的代码似乎是错误的。 我已经打印了
ob\u get\u length
以控制输出缓冲区。这给了我一个数字(即14285)。但是变量$d是空的。 代码如下:

    $g = tempnam('/tmp','ff'); 
    echo $g;
    $b = @file_put_contents($g, $str);
    @ob_start(); 
    @readgzfile($g); 
    $d = ob_get_contents(); 
    //echo ">>>".$d.ob_get_length()."<<" ; <--- prints length i.e. 14285
    ob_end_flush();
    //ob_end_clean();
    @unlink($g);
$g=tempnam('/tmp',ff');
echo$g;
$b=@文件内容($g,$str);
@ob_start();
@readgzfile($g);
$d=ob_get_contents();
//echo“>>>”$d.ob_get_length()