У меня есть настраиваемый плагин Moodle, который кто-то еще написал. Пользователь вводит дату в плагине, и эта дата записывается в отношении учебной деятельности.PHP date parsing
Первоначально у меня была проблема, когда плагин мог бы ошибаться в некоторых датах и путаться между форматом даты AU (UK) и форматом даты в США. Я исправил эту проблему, используя решение отсюда (How to make strtotime parse dates in Australian (i.e. UK) format: dd/mm/yyyy?).
Но теперь странная ошибка всплывает каждый сейчас и потом, когда определенные даты (в частности, 2 июля, 2015) получает это года и дня транспонировать. Таким образом, 02-07-2015
записывается как 15-07-2002
.
Это не похоже на вещь даты AU AUDIO, потому что это должно просто переворачивать день и месяц, а не год. Кроме того, это происходит только с этой конкретной датой. 01-07-2015
и 03-07-2015
работа хорошо.
Что еще более расстраивает то, что я не могу воспроизвести это на нашем промежуточном сервере. Проблема возникает только на нашем производственном сервере, хотя они оба работают с тем же кодом и той же версией Moodle.
Что я могу поделиться кода, как я обработки дату, которая ...
$date[$i] = strtotime(str_replace('/', '-', $date[$i]));
Это заставило меня интересно, если есть некоторые настройки PHP, которые могут быть причиной этого. Или что-то еще, что я смотрю?
FYI, производственный сервер поддерживается платным хостинг-провайдером, и у меня нет доступа к файлу php.ini (но я делаю это на стадии постановки).
У кого-нибудь есть такие проблемы? Или вы можете предложить, где я могу начать искать проблему?
plz xplain с кодом – Bugfixer
Итак, как именно вы анализируете дату и как вы ее проверяете неправильно? – zerkms
Как я уже сказал, кто-то еще написал этот плагин, так что это не мое. Также есть много кода, и если ошибка в коде, я понятия не имею, какой бит имеет значение. –