使用 PHP 获取周末



如何使用 PHP 返回周末? 我想以以下格式返回一个日期数组:-

Array
(
    [0] => Friday 17 April 2015
    [1] => Friday 24 April 2015
    [2] => Friday 1 May 2015
    [3] => Friday 8 May 2015
)

这应该适合您:

(在这里,我只是创建一个从今天开始的下周五开始的DatePeriodDateInterval 7天,直到下个月)

<?php
    $today = (new DateTime())->modify("next Friday");
    $interval = new DateInterval("P7D");
    $end = (new DateTime())->modify("next month");
    $period = new DatePeriod($today, $interval, $end);
    foreach($period as $date)
        echo $date->format("l j F Y") . "<br />";
?>

输出:

Friday 17 April 2015
Friday 24 April 2015
Friday 1 May 2015
Friday 8 May 2015

下次如果您需要对日期做一些事情,请参阅以下内容:http://php.net/manual/en/book.datetime.php

类似于Rizier的答案,但使用PHP生成器:

function fridays() {
    $begin = new DateTime('First friday of this month');
    $end = new DateTime('First friday of next month');
    $interval = new DateInterval( 'P1W' );
    $daterange = new DatePeriod( $begin, $interval ,$end );
    foreach($daterange as $date){
        yield $date;
    }
}

foreach(fridays() as $date){
    echo $date->format("l j F Y"), PHP_EOL;
}

最新更新