php date函数返回错误的一年

lev*_*tor 2 php date

我无法想象我的生活.我有一个需要格式化的日期.页面上有多个日期格式正常.

echo date('M jS o',strtotime('2012-12-31')) //is returning "Dec 31st 2013". 
echo date('M jS o',strtotime('2013-12-31')) //is returning "Dec 31st 2014".
Run Code Online (Sandbox Code Playgroud)

等等,今后一年总是一年.

date('M jS o',strtotime('2011-12-31')) //returns correctly "Dec 31st 2011". 
date('M jS o',strtotime('2010-12-31')) //returns correctly "Dec 31st 2010".
Run Code Online (Sandbox Code Playgroud)

等等,向后退他们很好.这是玛雅人向我们投掷的一些世界末日计划吗?:)

有任何想法吗?我假设有一个简单的答案.

谢谢!!

cee*_*yoz 8

使用Y一年,而不是o.根据date文档:

o:ISO-8601年号.它具有与Y相同的值,除了如果ISO周数(W)属于上一年或下一年,则使用该年代.(在PHP 5.1.0中添加)