我有一个Unix时间戳,例如1423389830
和1511367992
。我正在使用一个简单的date()
函数:date( 'M nS, Y', $timestamp );
,看来它返回了错误的日期,带有适当的后缀-输出一些相当愚蠢的结果。
使用以下示例代码:
printf( '[%s] [%s]', date( 'M nS, Y', 1423389830 ), date( 'M nS, Y', 1511367992 ) );
在3台服务器上:我的,PHPTester.net和OnlinePHPFucntions.com,结果是
[Feb 2th, 2015] [Nov 11nd, 2017]
将这些时间戳分别放入EpochConverter.com和Sunday, February 8, 2015 2:03:50 AM GMT-08:00
和Wednesday, November 22, 2017 8:26:32 AM GMT-08:00
中。 2月的日期提前6天-11月的日期提前11天。
您可以在此处查看示例:http://sandbox.onlinephpfunctions.com/code/605415e0490af3e8e1dc3cf12ce9e1ec9ea2b3b6
答案 0 :(得分:0)
所以,当我写下这个问题时,我意识到输出的日期与月份的数字相同(2月= 2月,11月是11月)。
这使我回头看了看日期格式,我意识到我使用了错误的格式... n
应该是d
或j
:date( 'M jS, Y', $timestamp );
我认为我将把它留给(使人尴尬的)后代使用-希望能帮助看到PHP日期后缀幽默地返回错误的任何人检查其日期格式字符串,并确保您实际使用适当/所需的格式