最佳答案
我使用两个 PHP 脚本移动大量数据: 一个在客户端使用命令行 PHP 脚本,另一个在 Apache 后面。我将数据发布到服务器端,并使用 php://input stream 将数据保存到 Web 服务器端。为了防止达到任何内存限制,对于每个 POST 请求,数据被分成500kB 的块。这一切都很好。
现在,为了节省带宽和提高速度,我想在发送前压缩数据,在另一端接收时解压缩。我找到了3对可以完成这项工作的函数,但我无法决定使用哪一对:
gzencode
/< a href = “ http://php.net/Manual/en/function. gzdecde.php”rel = “ noReferrer”> gzdecode
gzdeflate
/< a href = “ http://php.net/Manual/en/function. gzflate.php”rel = “ noReferrer”> gzinflate
gzcompress
/< a href = “ http://php.net/Manual/en/function. gzunpress.php”rel = “ noReferrer”> gzuncompress
您会推荐哪一对函数? 为什么?
更新: 我刚刚读了 zlib 常见问题解答:
Gzip 格式(gzencode
)旨在保留关于单个文件的目录信息,比如名称和最后修改日期。另一方面,zlib 格式(gzcompress
)是为内存和通信通道应用程序设计的,它有一个更紧凑的头部和尾部,并使用比 gzip 更快的完整性检查。