我正在使用PHPExcel进行批量数据导入。导入excel表时,我想知道现有数据的总行数。为此我正在使用代码,
$lastRow = $worksheet->getHighestRow();
现在,我正在尝试导入excel表,在该表中有800行。但是使用上面的代码,行计数显示为65536。实际上我想让行数为800.
上面的代码也返回空行数。但我需要数据现有行数。怎么做到这一点。 我也尝试了下面的代码
$lastRow = $worksheet->getHighestDataRow();
但它也无效。任何人都可以帮助我。
答案 0 :(得分:4)
要获取Excel文件中的列数,您必须使用以下代码:
$objPHPExcel->setActiveSheetIndex(0)->getHighestColumn();
并获取行数
$objPHPExcel->setActiveSheetIndex(0)->getHighestRow();
根据您的要求,您应该使用以下
$objPHPExcel->setActiveSheetIndex(0)->getHighestDataRow();
使用getHighestDataRow()
方法获取具有实际内容的单元格的最高行号。
请注意,单元格中的空格或空值可以作为内容。
从1.7.6及以下的PHPExcel版本中,可以在不读取整个文件的情况下获取工作表信息:
$objReader = PHPExcel_IOFactory::createReader("Excel2007");
$worksheetData = $objReader->listWorksheetInfo($uploadedfile);
$totalRows = $worksheetData[0]['totalRows'];
$totalColumns = $worksheetData[0]['totalColumns'];
答案 1 :(得分:1)
$sheetData = $objPHPExcel->getActiveSheet()->toArray(null,true,true,true);
echo count($sheetData)
它将返回行数.....