time()) { $timing = strtotime('today') + ($hour * 60 * 60) + ($minute * 60) + ($seconds) - time(); } else { $timing = strtotime('tomorrow') + ($hour * 60 * 60) + ($minute * 60) + ($seconds) - time(); } return $random ? $timing + mt_rand(1, 60) * 60 : $timing; } /** * @use 判断是否在时间内 * @param string $first_time * @param string $second_time * @return bool */ public static function inTime(string $first_time, string $second_time): bool { #判断当前时间是否在时间段内,如果是,则执行 $Day = date('Y-m-d ', time()); $timeBegin = strtotime($Day . $first_time); $timeEnd = strtotime($Day . $second_time); $curr_time = time(); if ($curr_time >= $timeBegin && $curr_time <= $timeEnd) { return true; } return false; } /** * @use 暂停 */ public static function pauseLock() { // 备份几种获取方式 get_called_class() // basename(str_replace('\\', '/', $class)); // substr(strrchr($class, "\\"), 1); // substr($class, strrpos($class, '\\') + 1); // array_pop(explode('\\', $class)); Schedule::triggerRefused((new \ReflectionClass(static::class))->getShortName()); } /** * @use 取消暂停 */ public static function cancelPause() { static::$lock = false; } /** * @use 暂停状态 * @return bool */ public static function getPauseStatus(): bool { return static::$pause_status; } /** * @use 设置状态 * @param bool $status */ public static function setPauseStatus(bool $status = false) { self::$pause_status = $status; } }