4
$year = date('Y', strtotime("2012"));
var_dump($year);//returns 2013

これは、php 5.2 の古いサーバーと php 5.4 の新しいサーバーで発生しています。

サーバーは strtotime を使用して、2012-01-01または2012-01またはのような文字列から年を取得します2012

私も試してみましたが、「2013 年 7 月 22 日月曜日 18:12:00 GMT」である「1374516720」を返します$dt = new DateTime('2012')getTimestamp

このバグの原因は何ですか? ドキュメントでは、strtotimeは年のみを受け入れると書かれています

どうすればいいのかわからない...

編集:

$year = date('Y', strtotime("2012"));

軍用時間として扱われ、現在の年の 20:12

4

3 に答える 3