Сравнение времени в php не работает

#php #date

#php #Дата

Вопрос:

     $now = date("Y-m-d H:i:s");

    $plusfive = date("Y-m-d H:i:s",strtotime(date("Y-m-d H:i:s")."  5 minutes"));

    if ( $plusfive > $now ) { 
        echo "correct"; 
    }
    else { 
        echo "nope"; 
    };
  

Я хочу отсчитать 5 минут до текущего времени, чтобы я мог отправить $ plusfive в mysql, и когда это время пройдет, пользователь сможет снова нажать на кнопку.
Но если я попытаюсь посмотреть, больше ли время (плюс пять долларов), чем текущее, он скажет «нет». Как я могу это сделать?

Комментарии:

1. Приведенный выше код отлично работает для меня. Я получаю «правильно».

2. Вы должны сравнивать временные метки или объекты DateTime, а не строки.

Ответ №1:

Попробуйте это :

 if ( strtotime($plusfive) > strtotime($now) ) { 
    echo "correct"; 
}
else { 
    echo "nope"; 
}
  

Комментарии:

1. Почему OP должен «попробовать это». Хороший ответ будет содержать объяснение того, что было сделано и почему. Это помогает оператору понять, а также будущим посетителям Stack Overflow.

2. спасибо, чувак, что сработало: D нужно подождать несколько минут, чтобы подтвердить ваш ответ.

3. @Rizier123 согласен и часто игнорируется (как и в этот раз). Представьте, сколько сочных отзывов это получило бы? Но опять же, я не думаю, что их это сильно волнует, «они» означают «все вовлеченные стороны» 😉 Пффтт… что вы можете сделать, когда вы живете в обуви (?).