我有这个php exec行:
exec('wget http://myurllinktofunction?id='.$insert_id .' > /dev/null &');
这将触发if条件,我想要做的就是让wget调用睡觉让我们说60s并且所有这段时间都没有对该exec进行任何调用,也是注意到我不想要我的if条件,等待睡眠是真的:我举个例子:
if($weight>15000){
$insert_id = $this->db->insert_id();
exec('wget myurllinktofunction?id='.$insert_id .' > /dev/null &');
}
$this->_issue_success();
break;
我希望这个流量在$ weight var中我会得到一个值,一次一个,让我们说一个值列表。当条件$ weight> 15000为TRUE时执行我的if和之后睡觉我的执行60s(wget不会被执行60s)但完成了issue_success()(我有案例OpResult :: Ok;)无论那个执行官是否在睡觉,我只想睡觉那个部分但是if应该继续,但是如果没有睡觉的话,他们就不会让它进入睡眠状态,如果不是在睡眠中再次执行它并执行相同的流程。
答案 0 :(得分:0)
据我所知,这可能会对你有所帮助:
$timer = 0;
$seconds = 60;
if($weight>15000){
$insert_id = $this->db->insert_id();
for($i=0;$i<$seconds;$i++){
sleep(1);
$timer++;
if($timer == 60){
exec('wget myurllinktofunction?id='.$insert_id .' > /dev/null &');
}
$this->_issue_success();
break;
}
}