ホームページ  >  記事  >  バックエンド開発  >  PHP関数アプリケーションは特定の日付の前日と翌日を返します

PHP関数アプリケーションは特定の日付の前日と翌日を返します

青灯夜游
青灯夜游オリジナル
2021-08-19 18:41:343219ブラウズ

前回の記事「PHP関数を使って某年の某月の某日までの日数を計算する」では、strtotime()関数を使って計算する方法を紹介しました。指定された 2 つの日付間の時差。メソッド。今回は指定した日付の前後の日付を返す方法を見ていきます。興味のある友人はそれについて学ぶことができます~

この記事の焦点は、指定された時刻の前日と翌日の日付を返すことです。では、どうすればよいのでしょうか?

実際は非常に簡単で、PHP の組み込み strtotime() 関数でこの操作を実現できます。私の実装メソッドを見てみましょう:

  • 特定の日付の前日の実装コードを返します

<?php
function GetTime($year,$month,$day){
	$timestamp = strtotime("{$year}-{$month}-{$day}");

	$time = strtotime("-1 days",$timestamp);
	echo date("Y-m-d",$time)."<br>";
}
GetTime(2000,3,1);
GetTime(2021,1,1);
?>

出力結果:

PHP関数アプリケーションは特定の日付の前日と翌日を返します

  • ##指定日以降の実装コードを返す

    #
    <?php
    function GetTime($year,$month,$day){
    	$timestamp = strtotime("{$year}-{$month}-{$day}");
    
    	$time = strtotime("+1 days",$timestamp);
    	echo date("Y-m-d",$time)."<br>";
    }
    GetTime(2000,2,28);
    GetTime(2021,2,28);
    ?>
  • 出力結果:

PHP関数アプリケーションは特定の日付の前日と翌日を返します

キーコードの解析:


    strtotime () この関数には 2 つの用途があります。1 つは、文字列形式で英語のテキストに記述された日付と時刻を解析して UNIX タイムスタンプ
  • にすること、もう 1 つは日付と時刻の間の間隔を計算することです

  • strtotime() 関数を使用して、
  • strtotime("-1 days",$timestamp)

    strtotime(" を使用して時間間隔を計算します。 1 days",$timestamp)指定された日付の前後の日付を計算します。 <br>

    -1 days

    」は 1 日を引くことを意味し、「 1 days」は 1 日を追加することを意味します。パターンを観察すると、最初の N 日を取得することもできます。必要に応じて次の N 日間 その日の日付

    <?php
    function GetTime($year,$month,$day){
    	$timestamp = strtotime("{$year}-{$month}-{$day}");
    
    	$time1 = strtotime("-2 days",$timestamp);
    	$time2 = strtotime("+3 days",$timestamp);
    	
    	echo date("Y-m-d",$time1)."<br>";
    	echo date("Y-m-d",$time2)."<br>";
    }
    GetTime(2000,3,5);
    ?>

PHP関数アプリケーションは特定の日付の前日と翌日を返します

    strtotime() 関数に 2 つのパラメータがある場合、 2 番目のパラメータはタイムスタンプ形式である必要があります。したがって、strtotime() 関数を 1 回使用して文字列形式の指定された日付を文字列に変換し、次に strtotime() 関数を 1 回使用して日付の加算と減算を実行し、N 日前と N 日前の日付を取得する必要があります。後。
  • strtotime() 関数の戻り値はタイムスタンプ形式であるため、日付の形式を指定するには
  • date("Y-m-d",$time)

    を使用する必要があります。と時刻を入力し、年-月-日形式の日付を返します。

知識を広げる:

    実際、strtotime() 関数を使用すると、次のようなことができるだけではありません。過去 N 日間と次の N 日間の日付を取得します。また、
  • 過去 N か月と次の N か月の日付を取得します

    過去 N 年間と次の N か月の日付を取得することもできます。 N 年 :

    <?php
    	$month1 = strtotime("-1 months",strtotime("2000-1-2"));
    	$month2 = strtotime("+2 months",strtotime("2000-1-2"));
    	echo date("Y-m-d",$month1)."<br>";
    	echo date("Y-m-d",$month2)."<br><br>";
    	
    	$year1 = strtotime("-1 years",strtotime("2000-1-2"));
    	$year2 = strtotime("+2 years",strtotime("2000-1-2"));
    	echo date("Y-m-d",$year1)."<br>";
    	echo date("Y-m-d",$year2)."<br>";
    ?>
  • 出力結果:

PHP関数アプリケーションは特定の日付の前日と翌日を返します

    次の場合は
  • 前週と翌週の日付を取得する

    、strtotime()関数を使用することもできます。例: 現在の日付は 2021-8-19、前週と次週の日付は次のとおりです:

PHP関数アプリケーションは特定の日付の前日と翌日を返します実装コード:

<?php
header("content-type:text/html;charset=utf-8");
$start = time();  //获取当前时间的时间戳
echo "当前日期为:".date(&#39;Y-m-d&#39;,$start)."<br />";
$interval = 7 * 24 * 3600;  //一周总共的秒数
$previous_week = $start - $interval;  //当前时间的时间戳 减去  一周总共的秒数
$next_week = $start + $interval;  //当前时间的时间戳 加上  一周总共的秒数
echo "前一周日期为:".date(&#39;Y-m-d&#39;,$previous_week)."<br />";
echo "后一周日期为:".date(&#39;Y-m-d&#39;,$next_week)."<br />";
?>

出力結果:

PHP関数アプリケーションは特定の日付の前日と翌日を返します#2 つの日付の差はちょうど 7 日です。これは実際には時差の計算を逆に応用したものです。

わかりました。これですべてです。他に知りたいことがある場合は、これをクリックしてください。 → →

phpビデオチュートリアル

以上がPHP関数アプリケーションは特定の日付の前日と翌日を返しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。