Heim  >  Artikel  >  Backend-Entwicklung  >  php strtotime 求解释

php strtotime 求解释

WBOY
WBOYOriginal
2016-06-23 13:39:17938Durchsuche

$t = '2011-01-31 17:21:22';
print_r(array(
            date('Y年m月',strtotime($t)),
            date('Y年m月',strtotime('+ 1 month',strtotime($t))),
            date('Y年m月',strtotime('+ 2 month',strtotime($t))),
));
exit;
为什么都是3月。。


回复讨论(解决方案)

$t 时间是1月31号  2月没有  所以数组第二个元素也是三月了。

二月没有 31 日 
所以 一月31日加一个月就到三月了

$t = '2011-01-28 17:21:22'; //改成 28 日print_r(array(            date('Y年m月',strtotime($t)),            date('Y年m月',strtotime('+ 1 month',strtotime($t))),            date('Y年m月',strtotime('+ 2 month',strtotime($t))),));
Array(    [0] => 2011年01月    [1] => 2011年02月    [2] => 2011年03月)


strtotime 是有自动校正日期的功能的
print_r(array(            date('Y年m月d日',strtotime('2011-02-31')),            date('Y年m月d日',strtotime('2011-04-31')),            date('Y年m月d日',strtotime('2011-06-31')),));
Array(    [0] => 2011年03月03日    [1] => 2011年05月01日    [2] => 2011年07月01日)

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn