如何使用 php 提取或解压 gzip 文件?
phpserver side programmingprogramming更新于 2025/4/16 21:07:17
可以使用 PHP 的 gzread 函数解压或解压缩压缩文件。下面是相同的代码示例 −
示例
$file_name = name_of/.dump.gz'; $buffer_size = 4096; // 特定时间需要读取的字节数,此处为 4KB $out_file_name = str_replace('.gz', '', $file_name); $file = gzopen($file_name, 'rb'); //以二进制模式打开文件 $out_file = fopen($out_file_name, 'wb'); //不断重复,直到输入文件的末尾 while (!gzeof($file)) { fwrite($out_file, gzread($file, $buffer_size)); //读取缓冲区大小的字节。 } fclose($out_file); //完成后关闭文件 gzclose($file);
输出
将产生以下输出 −
The uncompressed data which is extracted by unzipping the zipped file.
压缩文件的路径存储在名为‘file_name’的变量中。每次需要读取的字节数是固定的,并分配给名为"buffer_size"的变量。输出文件不会有 .gz 扩展名,因此输出文件名存储在名为"out_file_name"的变量中。
"out_file_name"以写入二进制模式打开,在从解压的 zip 文件中读取内容后将内容附加到其中。"file_name"以读取模式打开,使用"gzread"函数读取内容,并将提取的这些内容写入"out_file"。while 循环运行以确保读取内容直到文件末尾。