一尘不染

PHP readfile与file_get_contents

php

我已使用以下代码生成zip

// push to download the zip
header('Content-type: application/zip');
header('Content-Disposition: attachment; filename="'.$zip_name.'"');
readfile($zip_name);

这段代码可以正常工作,但是由于未知原因,直到我尝试为止

// push to download the zip
header('Content-type: application/zip');
header('Content-Disposition: attachment; filename="'.$zip_name.'"');
echo file_get_contents($zip_name);

我很好奇这两种情况的发生


阅读 270

收藏
2020-05-29

共1个答案

一尘不染

Readfile将直接将文件读取到输出缓冲区中,而file_get_contents会将文件加载到内存中,当您回显结果时,数据将有效地从内存复制到输出缓冲区中,是readfile的两倍。

2020-05-29