Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.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
PHP将当前日期与给定日期进行比较_Php_Date - Fatal编程技术网

PHP将当前日期与给定日期进行比较

PHP将当前日期与给定日期进行比较,php,date,Php,Date,我很难让一个简单的日期检查正常工作。我搜索了所有的问题,到目前为止,没有一个解决方案对我有帮助 我想做一个从某个日期到今天的循环 下面的代码目前的情况是,它没有停止,只是继续运行。当我记录我的日志时,我可以看到日期像它应该的那样增加了一天。我还尝试将操作符翻转到使用,它们是更容易处理的具体数字 int time(void) //current time stamp 您还可以使用strotime()进行转换。有关从编号日期格式到unix时间戳的转换,请参阅 使用,它们是更容易处理的具体数字 in

我很难让一个简单的日期检查正常工作。我搜索了所有的问题,到目前为止,没有一个解决方案对我有帮助

我想做一个从某个日期到今天的循环

下面的代码目前的情况是,它没有停止,只是继续运行。当我记录我的日志时,我可以看到日期像它应该的那样增加了一天。我还尝试将操作符翻转到使用,它们是更容易处理的具体数字

int time(void) //current time stamp
您还可以使用
strotime()
进行转换。有关从编号日期格式到unix时间戳的转换,请参阅

使用,它们是更容易处理的具体数字

int time(void) //current time stamp

您还可以使用
strotime()
进行转换。有关从编号日期格式到unix时间戳的转换,请参阅

您正在比较PHP日期对象($startof季后赛)和字符串($today)。尝试将$today转换为日期对象:

$startOfPlayoffs = new DateTime("2016-04-29");
$today = new DateTime();
$cpt = 0;
for($i = $startOfPlayoffs; $i <= $today; $i->modify('+1 day')){
    echo time($i) . "<br>";
    if ($cpt++ >= 100) exit;// as a safeguard
}
$STARTOF季后赛=新日期时间(“2016-04-29”);
$today=新日期时间();
$cpt=0;
对于($i=$STARTOF季后赛;$i修改(“+1天”)){
回声时间($i)。“
”; 如果($cpt++>=100)退出;//作为保护措施 }
您正在比较PHP日期对象($StarToF季后赛)和字符串($today)。尝试将$today转换为日期对象:

$startOfPlayoffs = new DateTime("2016-04-29");
$today = new DateTime();
$cpt = 0;
for($i = $startOfPlayoffs; $i <= $today; $i->modify('+1 day')){
    echo time($i) . "<br>";
    if ($cpt++ >= 100) exit;// as a safeguard
}
$STARTOF季后赛=新日期时间(“2016-04-29”);
$today=新日期时间();
$cpt=0;
对于($i=$STARTOF季后赛;$i修改(“+1天”)){
回声时间($i)。“
”; 如果($cpt++>=100)退出;//作为保护措施 }
像这样使用DateTime类的
->diff()
方法非常干净

->diff()
方法生成的DateInterval对象如下所示

DateInterval Object
(
    [y] => 0
    [m] => 3
    [d] => 4
    [h] => 17
    [i] => 23
    [s] => 4
    [weekday] => 0
    [weekday_behavior] => 0
    [first_last_day_of] => 0
    [invert] => 0
    [days] => 95
    [special_type] => 0
    [special_amount] => 0
    [have_weekday_relative] => 0
    [have_special_relative] => 0
)
所以代码可以这么简单

<?php
    $startOfPlayoffs = new DateTime( "2016-01-29" );
    $today= new DateTime();
    $diff = $startOfPlayoffs ->diff($today);

    for ( $i = 0; $i<$diff->days; $i++ ) {

         // do stuff
    }
像这样使用DateTime类的
->diff()
方法是非常干净的

->diff()
方法生成的DateInterval对象如下所示

DateInterval Object
(
    [y] => 0
    [m] => 3
    [d] => 4
    [h] => 17
    [i] => 23
    [s] => 4
    [weekday] => 0
    [weekday_behavior] => 0
    [first_last_day_of] => 0
    [invert] => 0
    [days] => 95
    [special_type] => 0
    [special_amount] => 0
    [have_weekday_relative] => 0
    [have_special_relative] => 0
)
所以代码可以这么简单

<?php
    $startOfPlayoffs = new DateTime( "2016-01-29" );
    $today= new DateTime();
    $diff = $startOfPlayoffs ->diff($today);

    for ( $i = 0; $i<$diff->days; $i++ ) {

         // do stuff
    }
使用:
date\u格式($STARTOF季后赛,“Y-m-d”)
获取一个“变量”,您可以将其与

$startOfPlayoffs = new DateTime( "2016-04-29" );
$today = date("Y-m-d");

    for($i = date_format($startOfPlayoffs,"Y-m-d"); $i >= $today; $i->modify('+1 day'))
    {
     //... some stuff
    }
使用:
date\u格式($STARTOF季后赛,“Y-m-d”)
获取一个“变量”,您可以将其与

$startOfPlayoffs = new DateTime( "2016-04-29" );
$today = date("Y-m-d");

    for($i = date_format($startOfPlayoffs,"Y-m-d"); $i >= $today; $i->modify('+1 day'))
    {
     //... some stuff
    }

$today
初始化为
DateTime
对象。实际上,它只是一个字符串检查,日期格式返回的字符串与开始日期相当……将
$today
初始化为
DateTime
对象。实际上,它只是一个字符串检查,日期格式返回的字符串与开始日期相当。。。