首页 > 解决方案 > 如何在 php 中以特定格式显示从今天开始的下 3 个日期?

问题描述

我正在尝试从今天开始打印接下来的 3 天。此代码工作正常,但我需要日期采用这种格式“2018 年 9 月 29 日”。更改格式不断给我错误。

<?php
// Set timezone
date_default_timezone_set('AFRICA/LAGOS');

// Start date
$date = date('Y-m-d');
// End date
$end_date = date('Y-m-d', strtotime("+3 days"));

while (strtotime($date) <= strtotime($end_date)) {
    $date=DateTime::createFromFormat('Y-m-d', $date)->modify('+1 day')->format('Y-m-d');
    echo $date.', ';
}
echo "<br><br>";
?>

标签: phplaraveldatetime

解决方案


您可以轻松地使用date()for()循环:-

<?php

date_default_timezone_set('AFRICA/LAGOS');

$date = date('Y-m-d');
for($i =1;$i<=3;$i++){
  echo $end_date = date('Y M,d', strtotime("+$i days"));
  echo PHP_EOL;
}

https://3v4l.org/YXZEe

有点功能性的方法:

<?php

function getNextDatesFromCurrentDate($how_many_dates){
    date_default_timezone_set('AFRICA/LAGOS');

    for($i =1;$i<=$how_many_dates;$i++){
        echo $end_date = date('Y M,d', strtotime("+$i days"));
        echo PHP_EOL;
    }
}

getNextDatesFromCurrentDate(3);

https://3v4l.org/1vKVA


推荐阅读