У меня есть часть простого веб-приложения, которое принимает входные данные из средства выбора календаря JavaScript, отправляет их на сервер, а затем сервер преобразует их в удобочитаемое время и возвращает обратно.
Моя HTML-форма имеет значение в формате MM/DD/YYYY.
Когда это отправляется на сервер, этот PHP преобразует его в другой формат (обратите внимание, что я использую CodeIgniter, поэтому $this->input->post()
совпадает с $_POST[]
):
php
$date = date('l, F n, Y', strtotime($this->input->post('date')));
Пример ввода и вывода
Ввод текста HTML получит значение «21.04.2013».
PHP-функция strtotime() вернет «воскресенье, 4 апреля 2013 г.».
Независимо от того, какую дату я туда ввел, strtotime() всегда возвращает мне правильную дату, за исключением дня месяца, который всегда оказывается тем же числом, что и номер месяца (например, любая дата в мае становится «5 мая 2013 г.» и т. д.).
Обновление: решено
Как только я опубликовал это, я понял, что проблема возникла из-за «n» в «l, F n, Y». Превращение его в «j» исправило ситуацию. Извините, что отнимаю у всех время.