如何在区块循环中使用PHPExcel库确定文件的结尾?
使用PHPExcel库,我试图迭代大约1500行,每行大约有25列 我正在使用此代码(取自): 因此,如果_emptyRow(),我将如何在区块循环中使用PHPExcel库确定文件的结尾?,php,phpexcel,Php,Phpexcel,使用PHPExcel库,我试图迭代大约1500行,每行大约有25列 我正在使用此代码(取自): 因此,如果_emptyRow(),我将打破循环。这对我不起作用 有人能建议一种只检索所有包含数据的记录的方法吗?当我运行它时,即使只有大约1500行有数据,它在超时之前也会到达大约23000行(使用set_time_limit(240)) 我通常会这样做: $objPHPExcel = $objReader->load($inputFileName); $rows = count($ob
打破循环。这对我不起作用
有人能建议一种只检索所有包含数据的记录的方法吗?当我运行它时,即使只有大约1500行有数据,它在超时之前也会到达大约23000行(使用set_time_limit(240)) 我通常会这样做:
$objPHPExcel = $objReader->load($inputFileName);
$rows = count($objPHPExcel->getActiveSheet()->toArray());
for ($start_row = 1; $start_row < $rows; $start_row ++)
// ...
$objPHPExcel=$objReader->load($inputFileName);
$rows=count($objPHPExcel->getActiveSheet()->toArray());
对于($start\u row=1;$start\u row<$rows;$start\u row++)
// ...
$excel->getActiveSheet()->toArray()
将只返回数组中的每一行(带数据)。对于1.7.6及以下版本,Christopher Mullins编写了一篇文章,允许您在读取整个文件之前读取工作表信息。此信息包括每个工作表的行数和列数,因此您可以使用此信息在“块读取”实际工作簿数据之前检索行数
这个补丁现在已经被合并到最新的SVN代码中,所以将来它将成为PHPExcel核心的一部分
function _emptyRow($row) {
$empty=true;
foreach($row as $r) {
if ($r!='') {
$empty = false;
}
}
return $empty;
}
$objPHPExcel = $objReader->load($inputFileName);
$rows = count($objPHPExcel->getActiveSheet()->toArray());
for ($start_row = 1; $start_row < $rows; $start_row ++)
// ...