0

私は自分のカレンダーをやっています。次の月と前の月に変更するには、次の関数を使用します。

date('m',"-1 months");
date('m',"+1 months");

しかし、翌月に行くと、-1+1は常にから取得されるため、これを再び使用することはできませんnow()

そのオフセットに動的な数値を使用できないと仮定すると、つまり

date('m',"$x months");

特定の日付に1か月を加算または減算するにはどうすればよいですか?

たとえば、この日付...

$date_today = strtotime($_GET['date']);
$next_month = $date_today +/- 1 month ?!?!??! 
4

4 に答える 4

3
$next_month = strtotime('+1 month',$date_today);
于 2012-08-16T15:44:40.850 に答える
2

使用strtotime...

$next_month = strtotime("+1 month");

あなたが渡すことができるunixタイムスタンプをあなたに与えるでしょうdate...

echo date("m", $next_month);
于 2012-08-16T15:44:25.410 に答える
1

現在、同じ問題の複数のサイトのカレンダーを実行しています。最終的に、現在の表示可能な月を変数として保存するか、誰かが次の月または前の月をクリックしたときにオブジェクト$_SESSIONとして渡します。$_POST

次または前のヒットが2回目にヒットしたときにそれを呼び出すと、(または最初に)次のようになります。

if(!isset($_SESSION['viewablemonth']) && $_SESSION['viewablemonth'] = '') {
    $_SESSION['viewablemonth'] = date("m.d.Y");
}

終了してから、月の足し算または引き算を行います。

$_SESSION['viewablemonth'] = strtotime("+1 month", $_SESSION['viewablemonth']);
于 2012-08-16T15:48:00.117 に答える
0

strtotimesを参照日と混同することができるので、次のようになります。

$next_month=strtotime("+1 month");  // assumes today
$following_month=strtotime("+1 month", $next_month);

http://uk.php.net/manual/en/function.strtotime.php 2つのパラメーターを取り、省略された場合、2番目のパラメーターはtime()の現在のタイムスタンプであると想定します

于 2012-08-16T15:45:08.260 に答える