从CodeIgniter控制器传递一个字符串到date_diff

问题描述:

我有一个循环,我从一个Excel表中返回的所有数据都是日期格式。这是循环:从CodeIgniter控制器传递一个字符串到date_diff

for ($row = 2; $row <= 6; $row++) { 
     $cell[] = $objWorksheet->getCell($column.$row)->getFormattedValue(); 
    } 

这一切都好。我也可以使用CODEIGNITER表库来创建一个包含该数据的表。现在的问题是,我需要比较从该工作表提取的数据到今天的日期,并检查提取到今天的数据之间的天差异。有办法做到这一点?我试图使用date_create($ cell),但该函数不接受数组。我需要比较每个数组的所有日期到今天。

编辑

嗨,我想比较2个日期与date_diff,但date2的是来自于我的CodeIgniter控制器的字符串。

$date1 = date_create("today"); 

     foreach ($dashboardSheetData as $date) { 
      $date2 = strtotime($date); 
      $diff = date_diff($date1, $date2); 
      echo $diff->format("%a"); 
     } 

我需要date_diff $日期1和$ DATE2之间,但我不能,因为我的$ date2的将是一个字符串,它是不能接受的。我怎样才能让date_diff传递一个字符串?

+0

解决了第一个问题,问题与现实问题 –

+0

编辑可以请你的var_dump()这两个日期。 –

+0

@RahulM here:string(10)“02.05.2016”string(10)“02.05.2016”string(10)“02.05.2016”string(10)“02.05.2016”string(10)“02.05.2016 “对象(日期时间)#109(3){[”日期“] =>字符串(26)”2016-06-10 00:00:00.000000“[”timezone_type“] => int(3)[”timezone“] =>字符串(13)“Europe/Berlin”} –

我很抱歉为此快速回答;我不确定数据是什么样的,但是,您确实希望将date_diff参数设置为YYYY-MM-DD,所以请确保格式化为这样。
REF:http://php.net/manual/en/datetime.diff.php

$date1 = date('Y-m-d'); 
foreach ($dashboardSheetData as $date) { 
    $date2 = date('Y-m-d',strtotime($date)); 
    $diff = date_diff($date1, $date2); 
    echo $diff->format("%a"); 
}