我有一个简单的 Web 应用程序的一部分,它从 JavaScript 日历选择器获取输入,将其发送到服务器,然后服务器将其转换为人类可读的时间并将其回显。
我的 HTML 表单最终具有格式为 MM/DD/YYYY 的值。
当它被 POST 到服务器时,此 PHP 将其转换为不同的格式(请注意,我使用的是 CodeIgniter,因此$this->input->post()
与 相同$_POST[]
):
php
$date = date('l, F n, Y', strtotime($this->input->post('date')));
示例输入和输出
HTML 文本输入将获得值“04/21/2013”。
PHP 的 strtotime() 将回显“2013 年 4 月 4 日,星期日”。
无论我在那里输入什么日期, strtotime() 总是给我正确的日期,除了月份中的哪一天总是与月份的数字相同(例如,五月的任何日期都变成“ 2013 年 5 月 5 日”等)。
更新:已解决
我一发布这个我就意识到是 'l, F n, Y' 中的 'n' 导致了这个问题。把它变成'j'固定的东西。很抱歉浪费大家的时间。