Время сравнения PHP
Как сравнить времена в PHP?
Я хочу сказать следующее:
$ThatTime ="14:08:10";
$todaydate = date('Y-m-d');
$time_now=mktime(date('G'),date('i'),date('s'));
$NowisTime=date('G:i:s',$time_now);
if($NowisTime >= $ThatTime) {
echo "ok";
}
Вышеприведенный код не печатает нормально. Я ожидал этого.
Ответы
Ответ 1
$ThatTime ="14:08:10";
if (time() >= strtotime($ThatTime)) {
echo "ok";
}
Решение с использованием DateTime
(что также относится к часовому поясу).
$dateTime = new DateTime($ThatTime);
if ($dateTime->diff(new DateTime)->format('%R') == '+') {
echo "OK";
}
http://php.net/datetime.diff
Ответ 2
Чтобы увидеть текущее время больше или равно 14:08:10, выполните следующее:
if (time() >= strtotime("14:08:10")) {
echo "ok";
}
В зависимости от ваших источников входных данных не забудьте указать часовой пояс.
См. Время PHP()
и PHP strtotime()
Ответ 3
Простой способ сравнить время:
$time = date('H:i:s',strtotime("11 PM"));
if($time < date('H:i:s')){
// your code
}