开始考虑使用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;
