Пользователь вводит даты заезда и выезда
Я хочу проверить погоду, дата заезда не вчера, а сегодня.
&
Дата выезда из погоды как минимум на один день больше, чем сегодня.
(т.е. начиная с завтрашнего дня, но не сегодня)
Формат даты: 23-05-2015 (дд-мм-гггг)
Попытался преобразовать дату в строку, используя (strtotime), но он также вычисляет часы и даже показывает текущую дату как предыдущую.
при использовании strtotime 🙁
Есть ли способ сделать это .. ?
Спасибо
Вы можете создавать объекты DateTime и сравнивать их.
<?php
$checkin = new DateTime($_POST['checkin']);
$checkout = new DateTime($_POST['checkout']);
$today = new DateTime();
if ($checkin >= $today && $checkout > $checkin) {
// proceed to order
}
Я не уверен, что смогу полностью понять, что вы хотите. Но если вы просто хотите проверить, например, допустим ли интервал дат бронирования, то вот очень простой фрагмент кода, который может вам помочь:
<?php
$checkIn = '22-05-2015';
$checkOut = '24-05-2015';
$checkInTime = strtotime($checkIn);
$checkOutTime = strtotime($checkOut);
$todayTime = strtotime(date('Y-m-d'));
if ($checkInTime < $todayTime) {
echo 'Can not have a checkIn day in the past!';
}
if ($checkOutTime < ($checkInTime + 60 * 60 * 24)) {
echo 'Have to stay at least one night!';
}