我正尝试从今天起打印3天。这段代码可以正常工作,但是我需要使用“ 2018 Sept,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>";
?>
答案 0 :(得分:4)
您可以轻松地通过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;
}
一些实用的方法:
<?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);
答案 1 :(得分:1)
Use Carbon library, to Add days
Like ,
$date = Carbon::today();
$nextday = $date->addDay();
答案 2 :(得分:0)
看看PHP date format documentation,您可以使用format('Y-F-d')
用英语打印月份名称
或者您可以创建自己的函数,该函数将返回月份名称以及您提供的数字。
答案 3 :(得分:0)
将日期数量添加到特定日期。您需要将两个参数传递给strtotime()
函数。
1。天数
2。开始日期
并将格式设置为“ 2018年9月29日”,则需要为date('Y M, d')
函数提供正确的格式。
$start_date = date('Y-m-d');
$dates = collect();
foreach (range(1,3) as $number_of_days) {
$dates->push(date('Y M, d', strtotime("+$number_of_days days", strtotime($start_date))));
}