public function CronInterface() { $db = M('SignList'); $queue = new \SaeTaskQueue('NewSign'); // 统计剩余未签到 $leftCount = $db->where('issign!=1')->count(); $queueLeftLength = $queue->leftLength(); $workArr = array(); if ($leftCount == 0) { echo 'Left UnSign Tieba is empty'; return; } // 剩余未签到是否大于队列长度 if ($leftCount > $queueLeftLength) { $workArr = $db->where('issign!=1')->limit($queueLeftLength)->select(); } else { $workArr = $db->where('issign!=1')->select(); } // 分发至队列 foreach ($workArr as $value) { $queue->addTask("/index.php/Home/Queue/TbSign", "cookieid=" . $value['cookieid'] . '&tiebaname=' . $value['tiebaname'] . '&fid=' . $value['fid'] . '&urlname=' . $value['urlname'] . '&signlistid=' . $value['id']); } $queue->push(); }