涉及相关知识点:
①PHPExcel是用来操作Office Excel 文档的一个PHP类库,它基于微软的Openxml标准和PHP语言。可以使用它来读取、写入不同格式的电子表格。
②time() 返回当前时间的秒数的函数,用来获取当前的系统时间
③require_once 为了避免重复加载文件即加载文件一次
④array()创建数组
⑤memory_get_usage()php内置函数能返回当前分配给PHP脚本的内存量,使用它来调试PHP代码性能
⑥var_dump() 用来打印数组,或者输出字符串
php读取excel文件,并进行相应处理的具体方法
代码示例如下:
<?php
/*读取excel文件,并进行相应处理*/
$fileName = "url.xls";
if (!file_exists($fileName)) {
exit("文件".$fileName."不存在");
}
$startTime = time(); //返回当前时间的Unix 时间戳
require_once ./PHPExcel/IOFactory.php;
$objPHPExcel = PHPExcel_IOFactory::load($fileName);
//获取sheet表格数目
$sheetCount = $objPHPExcel->getSheetCount();
//默认选中sheet0表
$sheetSelected = 0;$objPHPExcel->setActiveSheetIndex($sheetSelected);
//获取表格行数
$rowCount = $objPHPExcel->getActiveSheet()->getHighestRow();
//获取表格列数
$columnCount = $objPHPExcel->getActiveSheet()->getHighestColumn();
echo "<div>Sheet Count : ".$sheetCount." 行数: ".$rowCount." 列数:".$columnCount."</div>";
$dataArr = array();
/* 循环读取每个单元格的数据 */
//行数循环
for ($row = 1; $row <= $rowCount; $row++){
//列数循环 , 列数是以A列开始
for ($column = A; $column <= $columnCount; $column++) {
$dataArr[] = $objPHPExcel->getActiveSheet()->getCell($column.$row)->getValue();
echo $column.$row.":".$objPHPExcel->getActiveSheet()->getCell($column.$row)->getValue()."<br />";
}
echo "<br/>消耗的内存为:".(memory_get_peak_usage(true) / 1024 / 1024)."M";
$endTime = time();
echo "<div>解析完后,当前的时间为:".date("Y-m-d H:i:s")."
总共消耗的时间为:".(($endTime - $startTime))."秒</div>";
var_dump($dataArr);
$dataArr = NULL;}