php - дата сбрасывается в 1970 в 2038 году при добавлении в цикл
Я пытался создать список лет и месяцев, основываясь на некотором целочисленном значении, предоставленном пользователем в моем веб-приложении на основе PHP. При этом я столкнулся с ошибкой 2038 года, год был сброшен до 1970 года, когда цикл достиг 2038. Я использую версию PHP - 5.4, и я прибегнул к гуглу и применил решение, найденное по этой ссылке, но оно не работает для меня. Кто-нибудь пробовал другое решение для ошибки 2038 в php?
Вот мой PHP-код:
$i = 1;
$Tenurein = 360;
while ($i < $Tenurein) {
$MonthArr[] = date('F', strtotime($date2));
$YearArr[] = date('Y', strtotime($date2));
$date = new DateTime($date2);
$date->add(new DateInterval('P1M'));
$dateMon = $date->format('Y-m-d');
$date2 = $dateMon;
$i++;
}
,
1 ответ
Я использую PHP версии 5.6. Ниже код выдачи вывода Просмотр вывода
<?php
$i = 1;
$Tenurein = 360;
$date2 = date('Y-m-d');
while ($i < $Tenurein) {
$MonthArr[] = date('F', strtotime($date2));
$YearArr[] = date('Y', strtotime($date2));
$date = new DateTime($date2);
$date->modify('+1 month');
echo $dateMon = $date->format('Y-m-d');
$date2 = $dateMon;
$i++;
echo "<br>";
}
?>
Мы могли видеть много сообщений по этой проблеме. Для отображения даты, кажется, нет проблем. Но при хранении в базе данных я тоже столкнулся с той же проблемой. если вы используете тип данных timestamp, просто измените как datetime. Это будет работать.