PHP循环没有破坏

时间:2016-07-31 17:20:21

标签: php laravel laravel-4

我正在使用php循环以了解任何文件更改。如果文件发生更改,我试图停止循环。但在我的情况下,而不是停止..循环继续。

Route::get('api.chat.buffer/{job_id}',function($job_id){
    $award= DB::table('job_awards')->where('job_id',$job_id)->first();

        $dirname = base_path().'/files/chat/';
        $filename = $award->client_id.'_'.$award->user_id.'.timelog.log';
        $i =1;
        for($z=0;$z<=20;$z++){
            $current_file_time = filemtime($dirname.$filename);
            if($_GET['timestamp']<$current_file_time){
                echo json_encode(array('status'=>'success','data'=>$current_file_time,'node'=>1)); die;
                break;
            }
            sleep(1); // this should halt for 3 seconds for every loop
        }

    echo json_encode(array('status'=>'success','data'=>$current_file_time,'node'=>0));
    die;
});

我正在创建聊天脚本并在文件更改时跟踪更改。

由于

1 个答案:

答案 0 :(得分:0)

你可以在for循环中使用sleep函数吗?你试过产量了吗?尝试分配循环语句的数量来打破;在这种情况下,它将中断1; http://php.net/manual/en/control-structures.break.php