ホームページ > バックエンド開発 > PHPチュートリアル > PHPは開始日と終了日の間のすべての日付を取得します

PHPは開始日と終了日の間のすべての日付を取得します

jacklove
リリース: 2023-03-31 06:26:01
オリジナル
1876 人が閲覧しました

プロジェクトの要件により、指定された日付範囲内のデータを取得し、それを毎日処理する必要があります。

たとえば、2016-06-01 から 2016-06-05 までの日付範囲の毎日のデータを処理する必要があります。まず、この日付範囲内の毎日の日付を取得し、ループで処理を実行する必要があります。

<?php$date = array(&#39;2016-06-01&#39;,&#39;2016-06-02&#39;,&#39;2016-06-03&#39;,&#39;2016-06-04&#39;,&#39;2016-06-05&#39;);foreach($date as $d){    // 执行处理}?>
ログイン後にコピー

日付範囲が長い期間 (2015-09-01 から 2016-06-30) にまたがり、年と月 (閏月) にまたがる状況がある場合、日付配列を手動で作成することは困難です。時間がかかりすぎて不合理です。

そこで、指定された日付範囲内の毎日の日付を取得する次のメソッドを作成しました。コードは次のとおりです。

<?php/**
 * 获取指定日期段内每一天的日期
 * @param  Date  $startdate 开始日期
 * @param  Date  $enddate   结束日期
 * @return Array
 */function getDateFromRange($startdate, $enddate){
    $stimestamp = strtotime($startdate);    $etimestamp = strtotime($enddate);    // 计算日期段内有多少天
    $days = ($etimestamp-$stimestamp)/86400+1;    // 保存每天日期
    $date = array();    for($i=0; $i<$days; $i++){        $date[] = date(&#39;Y-m-d&#39;, $stimestamp+(86400*$i));
    }    return $date;
}// demo$date = getDateFromRange(&#39;2016-02-25&#39;,&#39;2016-03-05&#39;);
print_r($date);?>
ログイン後にコピー

出力:

Array(
    [0] => 2016-02-25
    [1] => 2016-02-26
    [2] => 2016-02-27
    [3] => 2016-02-28
    [4] => 2016-02-29
    [5] => 2016-03-01
    [6] => 2016-03-02
    [7] => 2016-03-03
    [8] => 2016-03-04
    [9] => 2016-03-05)
ログイン後にコピー

この記事では説明します。 PHP で開始日を取得する方法 終了日と終了日の間のすべての日付 関連コンテンツについては、php 中国語 Web サイトを参照してください。

関連する推奨事項:

データベース関連コンテンツへの php の PDO 接続の解釈

php を介して再帰的取得を実装する方法code 配列内の指定されたキーの値

PHP による 1G ファイル サイズの読み取り

以上がPHPは開始日と終了日の間のすべての日付を取得しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート