2011-09-19 10 views
1

이 클래스를 사용하여 많은 양의 데이터를 가져 오려고합니다. 대부분의 데이터를 올바르게 읽었지만 문제가있는 날짜 열이 두 개 있습니다.PHP Excel Reader로 Excel 파일 가져 오기

날짜의 형식은 DD/MM/YYYY이며 반환되는 값은 스프레드 시트의 값보다 1 일 앞당겨집니다. 나는이 같은 데이터에 액세스 시도 04/03/2011 02:00

예를 들어, 04/03/2011 00:00가된다 :

나는 또한 원시 데이터를 사용하여 시도했다
$data->sheets[$sheet]['cells'][$row][$col]; 

:

$data->sheets[$sheet]['cellsInfo'][$row][$col]['raw'] 

유닉스 타임 스탬프로 날짜를 반환 그러나 그것은 여전히해야 할 일보다 앞서 있습니다.

클래스가 열의 값을 간단한 문자열로 반환하도록 할 수있는 방법이 있습니까?

+0

그리고이 클래스는 어디에서 왔습니까? 링크를 제공 하시겠습니까? 이 이름으로 여러 제품이있을 수 있습니다. –

+0

올바른 행/열을 읽었습니까? –

+0

동일한 문제가 발생합니다. Linke to PHPExcel reader : https://phpexcel.codeplex.com/ Excel에서 날짜를 기록하는 방식으로 뭔가 의심 스럽습니다. 스프레드 시트는 미국에서 생산되고 IT 작업은 호주에 있습니다 (내가있는 곳). 관련성이 있는지 확실하지 않습니다. – elzaer

답변

1


해결 방법은 간단합니다. 타임 스탬프 또는 가져온 날짜에서 하루를 공제하지 않으시겠습니까?

$wrongDateTimestamp = "1304398800"; 

$rightDateTimestamp = strtotime("-1 day", $wrongDateTimeStamp); // Or alternatively - $wrongDateTimeStam - 86400 
$rightDate = date("d/m/Y", $rightDateTimestamp); 

희망이 있습니다.
Shai.

+0

이 "작동"하는 동안 모든 날짜가 하루 전으로 기록되는 이유를 이해해야합니다. Excel에 있음) 프로세스의 결과가 변경되는 날까지 일관되게 종료되지 않는 것처럼 더 좋을 것입니다. – elzaer

관련 문제