在使用php excel 插件中,我想获取当前sheet的最大列数
$objPHPExcel = PHPExcel_IOFactory::load($filePath);
$currentSheet = $objPHPExcel->setActiveSheetIndex($sheet);
$maxColumn =$currentSheet ->getHighestDataColumn();
$maxColumn= PHPExcel_Cell::columnIndexFromString($maxColumn);
本以为$maxColumn就是我想要的结构,但是结果并不是这样
有的获取的是当前sheet滚动条滚到最后的那个column,有的是,原来有数据,最后删除了,还是之前有数据的那个列,也就是excel记录了日志
各种情况不一,无奈只能通过值来处理
但是有个局限性,如果一个sheet页面有多行,想取出最大sheet,那只能一行一行的遍历了
以下是值遍历一行的程序
$objPHPExcel = PHPExcel_IOFactory::load($filePath);
$currentSheet = $objPHPExcel->setActiveSheetIndex($sheet);
$maxColumn =$currentSheet ->getHighestDataColumn();
if($maxColumn>0){
for($column=0;$column<$maxColumn;$column++){
$cellVal = $currentSheet->getCellByColumnAndRow($columnNum,$row)->getCalculatedValue();
if($cellVal===''||$cellVal===null){
break;
}
$columnNum++;
}
}
}