php - 返回页面后继续运行 php 脚本

标签 php

我正在尝试编写一个脚本,该脚本将在服务器上创建一个文件,然后使用 header() 将用户重定向到该文件。然后,大约 10 秒后我想删除该文件。我试过这个:

header('Location: '.$url);
flush();
sleep(10);
unlink($url);

但是浏览器只是等待脚本完成然后被重定向,但是那个时候文件已经被删除了。有没有办法告诉浏览器“文件结束”,然后继续计算?或者让 PHP 启动另一个脚本,但不等待该脚本完成?

最佳答案

让 PHP 页面为文件提供服务可能会更好。在这种情况下无需创建临时文件并删除它,只需将要写入的数据发送到临时文件即可。您需要正确设置 header ,以便浏览器可以识别您发送的文件类型。即内容类型:文本/xml;用于 xml 或 image/jpeg 用于 jpg。

此方法还可以处理需要较长时间下载文件的慢速客户端。

关于php - 返回页面后继续运行 php 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/357639/

相关文章:

php - Zend Framework 1.12 - AppendStylesheet 两次链接到 CSS 文件

php - 即插即用 PHP/MySQL 用户管理/登录/安全系统

php - 如何在所有浏览器的每个回显中正确显示输出?

php - 我如何模拟一个应该接受数组的方法?

php - 创建一个私有(private)包?

php - 当我不想在服务器上下载文件时,无法使用 mPDF 生成多个 PDF

php - 跟踪每月付款数据库结构

php - mysql 查找数字的第n位

php - Symfony 2 设置区域设置(LC_ALL, 'de_DE')

php - 在同一个页面依次执行多个提交