php定时执行问题,sleep后获取参数问题
程序员文章站
2022-05-16 20:10:34
...
项目中需要用到定时执行,但是定时的时间是一个变量参数,不是固定的
开始考虑使用crontab来实现,但是时间参数没办法自定义,还需要获得一个传递的ID来执行sleep后的程序
使用php中的sleep函数碰到一个问题,在sleep之前GET或者POST过来的参数,在sleep之后获取不到。
ignore_user_abort(); //即使Client断开(如关掉浏览器),PHP脚本也可以继续执行.
set_time_limit(0); // 执行时间为无限制,php默认执行时间是30秒,可以让程序无限制的执行下去
$interval=$_GET['interval']; // 接收$_GET参数
$id = $_GET['id']; //这里是请求触发的时候传递过来的ID,在sleep后需要用到
flush();
sleep($interval); // 按设置的时间等待执行 */
/*** sleep后需要用到上面的$id,来执行其他程序,测试后发现$id获取不到。为空**/
有知道的大神吗?或者提供一下其他的思路,谢谢了!
回复内容:
项目中需要用到定时执行,但是定时的时间是一个变量参数,不是固定的
开始考虑使用crontab来实现,但是时间参数没办法自定义,还需要获得一个传递的ID来执行sleep后的程序
使用php中的sleep函数碰到一个问题,在sleep之前GET或者POST过来的参数,在sleep之后获取不到。
ignore_user_abort(); //即使Client断开(如关掉浏览器),PHP脚本也可以继续执行.
set_time_limit(0); // 执行时间为无限制,php默认执行时间是30秒,可以让程序无限制的执行下去
$interval=$_GET['interval']; // 接收$_GET参数
$id = $_GET['id']; //这里是请求触发的时候传递过来的ID,在sleep后需要用到
flush();
sleep($interval); // 按设置的时间等待执行 */
/*** sleep后需要用到上面的$id,来执行其他程序,测试后发现$id获取不到。为空**/
有知道的大神吗?或者提供一下其他的思路,谢谢了!
把flush注释掉
测试可以执行
ignore_user_abort(); //即使Client断开(如关掉浏览器),PHP脚本也可以继续执行.
set_time_limit(0); // 执行时间为无限制,php默认执行时间是30秒,可以让程序无限制的执行下去
// params
$interval=$_GET['interval']; // 接收$_GET参数
$id = $_GET['id']; //这里是请求触发的时候传递过来的ID,在sleep后需要用到
flush();
sleep($interval);
echo $id;
上一篇: php三大流程控制语句比较说明
下一篇: oracle性能调优之
推荐阅读
-
执行、获取远程代码返回:file_get_contents 超时处理的问题详解_PHP教程
-
PHP的url参数获取问题,如何快速获取所需参数
-
PHP 表单传递参数与获取参数有关问题
-
php获取地址栏参数有关问题
-
php获取地址栏参数有关问题
-
关于在linux中定时执行php文件的有关问题
-
解决PHP获取不了 React Native Fecth参数的问题
-
CodeIgniter RestServer中put请求获取不到参数的问题解决_PHP教程
-
CodeIgniter RestServer中put请求获取不到参数的问题解决_PHP教程
-
php mysql问题 数据库连接成功执行析构函数后 后面的代码不执行什么原因