是否有一个PHP脚本,当我在PHP中创建文件时,我可以下载文件?
问题是我在 PHP 中有一个巨大的脚本来创建文件,要生成它,它持续大约 5 分钟。生成后,它会下载它,这里还需要 5 分钟左右。
下载一个文件总共需要 10 多分钟。
我需要的是创建一个有点像phpmyadmin的脚本,其中文件在创建时下载。
任何帮助将不胜感激
PS:我正在使用Codeigniter Framework。
提前谢谢。
这取决于您如何创建该文件,完整的示例将非常有帮助。
但基本上你需要设置正确的标题,然后你可以开始逐行输出结果。
header('Content-Type: application/octet-stream');
header('Content-Transfer-Encoding: Binary');
header('Content-disposition: attachment; filename="file.txt"');
for($i=1;$i<=20;$i++)
{
echo $i . "'r'n";
sleep(1);
}
exit;
下载提示将立即显示,但下载文件至少需要 20 秒。
您可能应该将标头设置为正确的 mime 类型,具体取决于您打算执行的操作。
请记住,在您的情况下,下载的大小不可用,因此用户不会知道文件有多大或还剩下多少要下载。这是一个缺点,如果尚未创建文件,则基本上无能为力。