当使用strtotime的序数值时,我有时会得到意想不到的结果.例如,为什么呢
date("M j", strtotime("second Tuesday February 2011"))
Run Code Online (Sandbox Code Playgroud)
导致"2月15日"(实际上是2011年的第三个星期二?
你错过了一个'of'.
$ php -r'echay date("M j",strtotime("2011年2月2日星期二"));'
2月15日$ php -r'echay date("M j",strtotime("2011年2月第二个星期二"));'
2月8日
PHP版本:
$ php -v
PHP 5.3.3(cli)(内置:2010年8月22日19:41:55)
版权所有(c)1997-2010 PHP Group
Zend Engine v2.3.0,版权所有(c)1998-2010 Zend Technologies
该文件告诉你的原因是:
还要注意''的'ordinal space dayname space'中的"of"和''''last'space spacename space'中的"of"做了一些特别的事情.
- 它将日期设置为1.
- "ordinal dayname"的''不会提前到另一天.(例如:"2008年7月的第一个星期二"是指"2008-07-01").
- "序数日"确实推进到另一天.(例如:"2008年7月1日星期二"表示"2008-07-08",另见上面列表中的第4点).
| 归档时间: |
|
| 查看次数: |
655 次 |
| 最近记录: |