checkSchedule(); return $result; } /** * 运行计划任务(用于服务器系统计划任务调用) */ public function run() { if (config('cron.default') == ScheduleDict::url) { $cron_model = new Cron(); $cron_model->execute(ScheduleDict::url); echo 1; } } /** * 执行计划任务(单独计划任务) */ public function execute() { if (config('cron.default') == ScheduleDict::default) { ignore_user_abort(true); set_time_limit(0); //设置计划任务标识 Log::write('检测事件执行:' . date('Y-m-d H:i:s', time())); $last_time = Cache::get('cron_last_load_time'); if (empty($last_time)) { $last_time = 0; } $time = time(); if (($time - $last_time) < 30) { Log::write('防止多次执行'); exit();//跳出 } Cache::set('cron_last_load_time', time()); $cron_model = new Cron(); $cron_model->execute('default'); sleep(30); $url = url('cron/task/execute'); http($url, 1); exit(); } } }