我:
$start_date = '2012-09-03';
$number_days = 5;
我想接收阵列与此日期:
$dates = array(
'2012-09-03',
'2012-09-04',
'2012-09-05',
'2012-09-06',
'2012-09-07'
);
这是什么最好的方法?
我:
$start_date = '2012-09-03';
$number_days = 5;
我想接收阵列与此日期:
$dates = array(
'2012-09-03',
'2012-09-04',
'2012-09-05',
'2012-09-06',
'2012-09-07'
);
这是什么最好的方法?
$start_date = '2012-09-03';
$dates[] = $start_date;
$number_days = 5;
for ($i=1; $i < $number_days; $i++) {
$dates[] = date('Y-m-d', strtotime("$start_date +$i days"));
}
http://php.net/manual/en/function.date-add.php 循环并添加所需的日期。
你有没有尝试过这样的事情
function get_days($start_date, $max){
$ts=strtotime($start_date);
$next_day_interval=24*60*60;
$arr=array();
$arr[]=$start_date;
for($i=1;$i<=$max;$i++){
$ts += $next_day_interval;
$arr[]=date('Y-m-d', $ts);
}
return $arr;
}
只是写在这里所以可能有一些编译时错误,但我希望你的想法。
试试这个。
$start_date = '2012-09-03';
$number_days = 5;
$dates = array();
$TS = strtotime($start_date);
$dates[0] = $start_date;
for($i=1;$i<5;$i++)
{
$dates[$i] = date('Y-m-d', strtotime('+1 day', $TS));
$TS = strtotime($dates[$i]);
}
这里就是你正在寻找(的工作也PHP < 5.3)什么
<?php
$start_date = '2012-09-03';
$number_days = 5;
$stdate = date(strtotime($start_date));
$dates = array();
for($i = 0 ; $i < $number_days ; $i++) {
$dates[$i] = date('Y-m-d', $stdate) ;
$stdate += 24*60*60;
}
var_dump($dates);
?>
从@vinay修改代码来打印实际输出
<?php
$start_date = '2012-09-03';
$number_days = 5;
$dates = array();
$TS = strtotime($start_date);
for($i=0;$i<5;$i++)
{
$dates[$i] = date('Y-m-d', strtotime('+1 day', $TS));
$TS = strtotime($dates[$i]);
echo date('y-m-d',$TS).'<br>';
}
?>
我已更新我的答案。因为这是第一次约会'2012-09-03',它从'2012-09-04'开始。 – Vinay
这里PHP 5.3 DateTime和DateInterval的简单例子。这是明确的解决方案。 注意:PHP 5.2支持DateTime,但不支持DateInterval。您可以在PHP 5.2中的自定义类中声明它,请参阅:DateInterval Definition。
<?php
$start_date = '2012-09-03';
$number_days = 5;
$dt = new DateTime($start_date);
$dates = array();
for($i = 0; $i < $number_days; $i++) {
$dates[] = $dt->format("Y-m-d");
$dt->add(new DateInterval("P1D"));
}
print_r($dates);
?>
您使用哪个版本的PHP,高于或等于5.3? – Rolice
PHP 5.2和PHP 5.3。这是在两台服务器上 –
你会在哪一个脚本上运行该脚本,或者它不是maters? – Rolice