Нужно вычислить разницу в днях (часах, минутах, секундах) между двух дат. Написан следующий код:
$vyezd = date("Y-m-d 00:00:00", strtotime($line ['Дата выезда']));
$zaezd = date("Y-m-d 00:00:00", strtotime($line ['Дата заезда']));
$diff = $vyezd - $zaezd;
$line['Срок пребывания'] = $diff/86400;
Формат поля "Срок пребывания" делал и текстовым и числовым. Результат один - не работает.
Представитель службы поддержки предложил такой код:
$vyezd = strtotime($line ['Дата выезда']); // преобразуем первую дату в число секунд
$zaezd = strtotime($line ['Дата заезда']); // преобразуем вторую дату в число секунд
$diff = $vyezd - $zaezd; // считаем разницу в секундах
$line['Срок пребывания'] = $diff/86400; // вычисляем разницу в днях
Результат тот же Помогите, кто может!
3
В теме одно сообщение
#1
Отправлено 17 Июль 2013 - 13:49
#2
Отправлено 19 Июль 2013 - 11:44
Тему только сейчас увидел, ответ Вами уже видимо получен через ТП. Тем не менее напишу для остальных:
Ошибка была в пробеле между $line и ['Дата выезда']. В этом случае вычисление работает некорректно.
В первом же случае было лишнее двойное преобразование из даты в число и обратно.
Ошибка была в пробеле между $line и ['Дата выезда']. В этом случае вычисление работает некорректно.
В первом же случае было лишнее двойное преобразование из даты в число и обратно.
Количество пользователей, читающих эту тему: 2
0 пользователей, 2 гостей, 0 анонимных