내 xlsx 파일의 셀에서 값을 가져 오려고합니다. 나의 2 개의 고리 안에 getCellbyColumnAndRow()->getValue()
기능을 사용하고있다.for는 my for 루프에서 셀 값을 검색합니다. 무한 루프에 멈추다
$file = 'test.xlsx';
try {
$inputFileType = PHPExcel_IOFactory::identify($file);
$objReader = PHPExcel_IOFactory::createReader($inputFileType);
$objPHPExcel = $objReader->load($file);
$sheet = $objPHPExcel->getActiveSheet();
} catch(Exception $e) {
die('Error loading file "'.pathinfo($inputFileName,PATHINFO_BASENAME).'": '.$e->getMessage());
}
// get worksheet dimentions
$higestRow = $sheet->getHighestDataRow();
$highestCol = $sheet->getHighestDataColumn();
//get value from all the cells
for($i = 1; $i <= $higestRow; $i++){
for($j = 'A'; $j <= $highestCol; $i++){
echo $sheet->getCellByColumnAndRow($j, $i)->getValue();
echo "</br>";
}
}
하지만 무한 루프에 빠져있는 것처럼 보입니다. 왜?
또한 getCellByColumnAndRow('I', 16);
을 입력하면 셀 A16
에 값이 표시됩니다. 하지만 할 때 getCellByColumnAndRow(8,16)
. 나는 I16
에서 값을 얻는다. 그래서 이것은 또한 행 지수는 1로 시작을 의미하고 열 인덱스는 루프가 잘못 보이는이 1.
'에 대한 ($ j를 = 'A'; $ j에 <= $ highestCol; $ 내가 ++) {': 심지어와 '$ i ++'를'$ j ++'문제로 고치면,'$ highestCol'이'Z'보다 큰 경우 무한 루프가 생깁니다 .... 이전에 증가한'! == $ highestCol'을 사용해야합니다 '$ highestCol'을 반복하기 전에 (마지막 열을 얻도록) –