2016-06-09 3 views
1

반환 된 Excel 시트에서 가져온 모든 데이터가 날짜 형식으로되어있는 루프가 있습니다. 루프는 다음과 같습니다.CodeIgniter 컨트롤러에서 date_diff로 문자열 전달

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

모두 괜찮습니다. 나는 또한 CODEIGNITER 테이블 라이브러리를 사용하여 그 데이터로 테이블을 생성 할 수있다. 문제는 그 시트에서 추출한 데이터를 오늘 날짜와 비교하고 오늘 추출한 데이터 간의 날짜 차이를 확인해야한다는 것입니다. 그렇게 할 방법이 있습니까? 나는 date_create ($ cell)로 작업을 시도했지만 그 함수는 배열을 받아들이지 않았다. 그리고 오늘부터 오늘까지 배열의 모든 날짜를 비교해야합니다.

편집 :

안녕, 나는 date_diff 2 날짜를 비교하기 위해 노력하고있어,하지만 DATE2 내 CodeIgniter의에서 컨트롤러에서 제공되는 문자열입니다.

$date1 = date_create("today"); 

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

나는 $ 날짜 1과 $ DATE2 사이 date_diff 확인해야합니다,하지만 난 내 $의 날짜 2는 문자열입니다 수 없기 때문에 그것은 인정 아닙니다. date_diff가 문자열을 전달하도록하려면 어떻게해야합니까?

+0

은() 날짜 모두 당신이 위해서 var_dump하시기 바랍니다 수있는 진짜 문제 –

+0

로 편집 질문입니다. –

+0

@RahulM 여기에 있습니다 : 문자열 (10) "02.05.2016"문자열 (10) "02.05.2016"문자열 (10) "02.05.2016"문자열 (10) "02.05.2016"문자열 (10) "02.05.2016 [timezone_type "] => int (3) ["timezone "] 객체 (DateTime) # 109 (3) {["date "] => 문자열 (26)"2016-06-10 00 : 00 : 00.000000 " => 문자열 (13) "유럽/베를린"} –

답변

0

이 빠른 답변에 대해 사과드립니다. 그러나 데이터가 어떻게 보이는지 확실하지는 않지만 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"); 
} 
관련 문제