Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从日期间隔HTML PHP显示所有日期_Php_Html_Date - Fatal编程技术网

如何从日期间隔HTML PHP显示所有日期

如何从日期间隔HTML PHP显示所有日期,php,html,date,Php,Html,Date,我面临一个问题,当我想显示一天一天从一个日期间隔 我的意思是我有一个简单的表格: <form method="post" action=""> From Date1: <input type="text" name="date1" value="<!--10 days ago date (2013-09-14)-->"/> <br> To Date2: <input type="text" name="date2" value="<!-

我面临一个问题,当我想显示一天一天从一个日期间隔

我的意思是我有一个简单的表格:

<form method="post" action="">
From Date1: <input type="text" name="date1" value="<!--10 days ago date (2013-09-14)-->"/>
<br>
To Date2: <input type="text" name="date2" value="<!--today's date (2013-09-24)-->"/>
<input type="submit" value="Change interval"/>
</form>
如果可能,将所有这些日期保存在数组或变量中


希望你能帮助我。谢谢。

试试这个,想想我几年前从php.net上得到的,很抱歉没有更好的参考链接

function dates_array($start, $end) {
    $range = array();   

    if (is_string($start) === true) $start = strtotime($start);
    if (is_string($end) === true )  $end = strtotime($end);

    do {
        $range[] = date('Y-m-d', $start);
        $start = strtotime("+ 1 day", $start);
    }
    while($start <= $end);

    return $range;
}
函数日期\u数组($start,$end){
$range=array();
如果(is_string($start)==true)$start=strottime($start);
如果(is_string($end)==true)$end=strottime($end);
做{
$range[]=日期('Y-m-d',$start);
$start=STROTIME(“+1天,$start”);
}

虽然($start试试这个,但我想我是几年前从php.net上得到的,很抱歉没有更好的参考链接

function dates_array($start, $end) {
    $range = array();   

    if (is_string($start) === true) $start = strtotime($start);
    if (is_string($end) === true )  $end = strtotime($end);

    do {
        $range[] = date('Y-m-d', $start);
        $start = strtotime("+ 1 day", $start);
    }
    while($start <= $end);

    return $range;
}
函数日期\u数组($start,$end){
$range=array();
如果(is_string($start)==true)$start=strottime($start);
如果(is_string($end)==true)$end=strottime($end);
做{
$range[]=日期('Y-m-d',$start);
$start=STROTIME(“+1天,$start”);
}
当我开始时

特别针对您的用例:

$dates    = array();
$start    = new DateTime($_POST['date1']);
$end      = new DateTime($_POST['date2']);
$interval = new DateInterval('P1D');
$period   = new DatePeriod($start, $interval, $end);

foreach ($period as $dt)
{
    $dates[] = $dt->format("Y-m-d");
}

特别针对您的用例:

$dates    = array();
$start    = new DateTime($_POST['date1']);
$end      = new DateTime($_POST['date2']);
$interval = new DateInterval('P1D');
$period   = new DatePeriod($start, $interval, $end);

foreach ($period as $dt)
{
    $dates[] = $dt->format("Y-m-d");
}

这是一个比我提供的好得多的答案。谢谢!+1这是一个比我提供的好得多的答案。谢谢!+1