2

2012 年 4 月 30 日のように配線されています

両方 :

date("M", strtotime("-2 months"));
date("M", strtotime("-1 months"));

次のような同じ結果が得られます: Mar Mar

それ以外の日でもOKです。私は新人すぎて何も言えません どうすればいいですか?

私はXAMPP 1.7.4パッケージ(PHP 5.3.5)を持っています

4

1 に答える 1

1

実際に返される 2 つの日付は次のとおりです。

  • 2012-03-01
  • 2012-03-30

このような月になると、 の動作strtotime()は少しトリッキーになります。2 か月さかのぼると 2 月 30 日がないため、3 月 1 日になります。戻る 1 か月は、期待どおりの動作です。

この問題を解決するには、使用時に月の部分を使用してstrtotime()ください。

date('M', strtotime('-2 months', strtotime('2012-04-01')));

年/月を現在のものに置き換えるだけです。

于 2012-04-30T05:00:42.833 に答える