2016-06-09 2 views
1

У меня есть цикл, в котором все данные, которые я беру из листа Excel, возвращаются в формате даты. Вот петля:Передача строки из CodeIgniter Controller в date_diff

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

Все в порядке. Я также могу создать таблицу с этими данными, используя библиотеку таблиц CODEIGNITER. Проблема в том, что мне нужно сравнить данные, извлеченные из этого листа, до сегодняшнего дня и проверить разницу дней между данными, извлеченными до сегодняшнего дня. Есть ли способ сделать это? Я пытался работать с date_create ($ cell), но эта функция не принимала массив. И мне нужно сравнить все даты массива каждый по сегодняшний день.

Edit:

Привет, Я пытаюсь сравнить 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 между $ date1 и $ date2, но я не могу, потому что мой $ date2 будет строка, и это не принято. Как я могу передать date_diff строку?

+0

решаемые на первый вопрос, вопрос отредактирован с реальной проблемой –

+0

пожалуйста, вы можете var_dump() обе даты. –

+0

@RahulM здесь: строка (10) "02.05.2016" строка (10) "02.05.2016" строка (10) "02.05.2016" строка (10) "02.05.2016" строка (10) "02.05.2016 "object (DateTime) # 109 (3) {[" date "] => string (26)" 2016-06-10 00: 00: 00.000000 "[" timezone_type "] => int (3) [" timezone "] => строка (13) "Европа/Берлин"} –

ответ

0

Приносим извинения за быстрый ответ; Я не уверен, как выглядят данные, однако вы хотите указать параметры date_diff как YYYY-MM-DD, поэтому обязательно отформатируйте их как таковые.
исх: 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"); 
} 
Смежные вопросы