write by a programer
<?php /** * * * * PHPExcel导入文件处理 */ require_once '/PHPExcel/IOFactory.php'; if (file_exists("xlsname.xls")) { //判断文件是否存在 $reader = PHPExcel_IOFactory::createReader('Excel2007'); //设置以Excel2007格式(Excel2007以上工作簿) $PHPExcel = $reader->load("31excel5.xls"); // 载入excel文件 $sheet = $PHPExcel->getSheet(0); // 读取第一個工作表 $highestRow = $sheet->getHighestRow(); // 取得总行数 $highestColumm = $sheet->getHighestColumn(); // 取得总列数 $highestColumm= PHPExcel_Cell::columnIndexFromString($colsNum); //字母列转换为数字列 如:AA变为27 /** 循环读取每个单元格的数据 */ for ($row = 3; $row < 4; $row++){//行数是以第3行开始 第三行为预设数组key值 $datakey=array(); for ($column = 'A'; $column <= $highestColumm; $column++) {//列数是以A列开始 $datakey[] = $sheet->getCell($column.$row)->getValue(); } } for ($row = 4; $row <= $highestRow; $row++){//行数是以第4行开始 $dataset=array(); for ($column = 'A'; $column <= $highestColumm; $column++) {//列数是以A列开始 $dataset[] = $sheet->getCell($column.$row)->getValue(); } $myAry=array_combine($datakey, $dataset); $data[]=$myAry; } } var_dump($data); ?>
关于准确行列数的获取
上文中使用getHighestColumn() 获取的是excel文件的最大列数(非实际内容列数)
使用 getHighestDataColumm() 获取的则是excel文件中数据最大列数
2020-3-2更新