leaves note

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更新


上一篇: kkpager 问题归总