短篇小说:最初编写此代码的人 [并且可能仍然] 是个智障人士。
有问题的代码从我们的提供商那里接收付款事件,并使用以下格式将它们记录到数据库中:'o-m-d H:i:s'
这一切都很好,除了%o
如果 ISO-8601 周“属于”不同的年份,修饰符会给你一个不同的年份。[参考]
恰当的例子:我们记录了 2013 年 12 月 31 日的付款,在正常/不疯狂的人日期中,应该是 2012 年 12 月 31 日。因此,出于所有意图和目的,我们看到未来似乎发生的付款,偶尔也会发生在过去。
这里真正的问题是我在 PHP 或 mySQL 中找不到任何可以解释%o
标志的日期解析函数,从而阻止我将这些日期重新格式化为正常的东西。
有谁知道如何正确解释这些日期?