gzip 压缩时 fopen 权限被拒绝

permission denied fopen while gzipping

我正在尝试压缩当前目录中的所有 xml 文件,然后将所有这些压缩文件从目录移动到 another.However 我总是收到 "fopen(.): failed to open stream: Permission denied" 错误。这是我的 gzip 代码;

$dest = 'test2.gz'; 
$mode = 'wb' . $level; 
$error = false; 
if ($fp_out = gzopen($dest, $mode)) { 
    if ($fp_in = fopen($merged,'rb')) { 
        while (!feof($fp_in)) 
            gzwrite($fp_out, fread($fp_in, 1024 * 512)); 
        fclose($fp_in); 
    } else {
        $error = true; 
    }
    gzclose($fp_out); 
} else {
    $error = true; 
}
if ($error)
    return false; 
else
    return $dest;

 }
$files = scandir("export");
foreach ($files as $file_name) {
  gzCompressFile($file_name);}

您可以通过 shell

的 chmod 命令更改文件的权限
sudo chmod 777 filename

或者您可以选择 运行 作为 root 用户的进程。