phpExcel操作
2019-05-22 06:36:11来源:博客园 阅读 ()
下载PHPExcel资源
https://github.com/PHPOffice/PHPExcel
引入PHPExcel资源
include "/lib/PHPExcel/Classes/PHPExcel/IOFactory.php";//读取Excel所需文件 include "/lib/PHPExcel/Classes/PHPExcel.php"; //写入excel所需的类文件
构造myExcelUtil类
private $fileName = null; private $sheet = 0; /** * myExcelUtil构造函数,构造参数为文件路径 * * @param String $fileName */ public function __construct($fileName = null) { $this->fileName = $fileName; }
读出一个sheet表
/** * 读取一个sheet表,默认第一个 * */ public function readSheet() { $this->readSheetBySheet(0); } /** * 读取一个sheet表 * @param String|int $sheetIndex,表名或索引 * @return array,二维数组 */ public function readSheetBySheet($sheetIndex = 0) { //$filename = 'xuehua04.xlsx'; date_default_timezone_set('PRC'); // 读取excel文件 try { $inputFileType = PHPExcel_IOFactory::identify($this->fileName); $objReader = PHPExcel_IOFactory::createReader($inputFileType); $objPHPExcel = $objReader->load($this->fileName); } catch (Exception $e) { die("加载文件发生错误:" . pathinfo($this->fileName, PATHINFO_BASENAME) . ":" . $e->getMessage()); } // 确定要读取的sheet try { $sheet = $objPHPExcel->getSheet($sheetIndex); $this->setSheet($sheet->getTitle()); } catch (PHPExcel_Exception $e) { } $highestRow = $sheet->getHighestRow(); $highestColumn = $sheet->getHighestColumn(); $outputArray = array(); // 获取一行的数据 for ($row = 1; $row <= $highestRow; $row++) { // Read a row of data into an array $rowData = $sheet->rangeToArray("A" . $row . ":" . $highestColumn . $row, NULL, TRUE, FALSE); //这里得到的rowData都是一行的数据,得到数据后自行处理,我们这里只打出来看看效果 $outputArray[] = $rowData[0]; //print_r($rowData); } return $outputArray; }
插入一条数据
/** * 向指定表指定位置插入数据 * @param String|int $sheetIndex,表名或索引 * @param int $row,行 * @param int $col,列 * @param string $value,值 */ public function addCellValueByRC($sheetIndex = 0, $row = 0, $col = 0, $value = "") { $inputArray = $this->readSheetBySheet(0); $inputArray[$row - 1][$col - 1] = $value; $objPHPExcel = new PHPExcel(); //实例化一个PHPExcel()对象 try { $objSheet = $objPHPExcel->getActiveSheet(); } catch (PHPExcel_Exception $e) { } //选取当前的sheet对象 $objSheet->setTitle($this->getSheet()); //对当前sheet对象命名 //常规方式:利用setCellValue()填充数据 //$objSheet->setCellValue("A1", "张三")->setCellValue("B1", "李四"); //利用setCellValues()填充数据 /*$arrayLength = count($inputArray); $basic = 'A'; for($i = 0;$i<$arrayLength;$i++){ foreach ($inputArray[$i] as $key => $d){ $objSheet->setCellValue($basic.($i+1), $d); $basic++; } $basic = 'A'; }*/ //取巧模式:利用fromArray()填充数据 try { $objSheet->fromArray($inputArray); } catch (PHPExcel_Exception $e) { } //利用fromArray()直接一次性填充数据*/ try { $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); } catch (PHPExcel_Reader_Exception $e) { } //设定写入excel的类型 try { $objWriter->save($this->getFileName()); } catch (PHPExcel_Writer_Exception $e) { } //保存文件 }
原文链接:https://www.cnblogs.com/annanl/p/10888458.html
如有疑问请与原作者联系
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- PHP实现打包下载文件的方法示例 2020-03-17
- PHPExcel如何读取Excel文件 2020-03-10
- Yii操作数据库的3种方法 2020-02-20
- PHP文件管理之实现网盘及压缩包的功能操作 2020-02-20
- php二维码生成以及下载实现 2020-02-17
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash