gpt4 book ai didi

php - 放弃 PHP 中的长进程(但让它们完成)

转载 作者:可可西里 更新时间:2023-10-31 23:12:33 24 4
gpt4 key购买 nike

我有一个提交到启动脚本的 PHP 页面的 HTML 表单。该脚本可能需要 3 秒到 30 秒的时间才能运行 - 用户无需在附近即可完成该脚本。

是否可以启动一个 PHP 脚本,立即向用户打印“谢谢”(或其他任何内容)并让他们继续他们的快乐,同时您的脚本继续工作?

在我的特定情况下,我将表单数据发送到一个 php 脚本,然后该脚本将数据发布到许多其他位置。目前,等待所有帖子成功不符合我的兴趣。我只想让脚本运行,允许用户去做他们喜欢的任何其他事情,仅此而已。

最佳答案

例如将您的长期工作放在另一个 php 脚本中

背景.php:

sleep(10);
file_put_contents('foo.txt',mktime());

前景.php

$unused_but_required = array();
proc_close(proc_open ("php background.php &", array(), $unused_but_required));
echo("Done);

您会立即看到“完成”,文件将在 10 秒后写入。

我认为 proc_close 有效是因为我们没有给 proc_open 管道,也没有文件描述符。

关于php - 放弃 PHP 中的长进程(但让它们完成),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/622892/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com