PHP操作Excel – PHPExcel 基本用法
2024-10-07 12:12:25
利用PHP实现对于Excel的写入和读取,主要借助于PHPExcel插件来完成。
准备工作:
1.下载PHPExcel的SDK,下载地址:https://github.com/PHPOffice/PHPExcel。
2.SDK解压之后将里面的Classes文件(包含PHPExcel文件和PHPExcel.php)拷贝到自己的项目中 一、PHPExcel实现写入excel操作步骤
首先需要引入类文件,引入PHPExcel.php文件。
1、新建一个Excel表格(实例化PHPExcel类)
2、创建sheet(内置表) (createSheet()方法、setActiveSheet()方法、getActiveSheet()方法)
3、填充数据(setCellValue()方法)
4、保存文件(PHPExcel_IOFactory::createWriter()方法、save方法) 二、PHPExcel实现读取Excel操作步骤
首先需要引入类文件,引入IOFactory.php文件。
1、实例化Excel读取对象
2、加载Excel文件(全部加载 、选择加载)
3、读取Excel文件(全部读取、逐行读取)
<?php //利用PHPExcel实现Excel文件的写入demo示例: $dir = dirname(__FILE__); //找出当前脚本所在路径
require $dir.'/PHPExcel.php'; //添加读取excel所需的类文件
$objPHPExcel = new PHPExcel(); //实例化一个PHPExcel()对象
$objSheet = $objPHPExcel->getActiveSheet(); //选取当前的sheet对象
$objSheet->setTitle('2018test'); //对当前sheet对象命名名称
//常规方式:利用setCellValue()填充数据
$objSheet->setCellValue("A1","张一")->setCellValue("B1","张二"); //利用setCellValues()填充数据
//取巧模式:利用fromArray()填充数据
$array = array(
array("","","C1","张三"),
array("","","C2","李四")
);
$objSheet->fromArray($array); //利用fromArray()直接一次性填充数据
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel,'Excel2007'); //设定写入excel的类型
$objWriter->save($dir.'/test.xlsx'); //保存文件
<?php //利用PHPExcel实现Excel文件的读取demo示例: //利用php读取excel数据
header("Content-type:text/html;charset=utf-8"); //设置页面内容是html,编码格式是utf-8
$dir = dirname(__FILE__); //找出当前脚本所在路径
require $dir.'/PHPExcel/IOFactory.php';
$filename = $dir.'/test.xlsx';
$objPHPExcelReader = PHPExcel_IOFactory::load($filename); //加载excel文件
foreach($objPHPExcelReader->getWorksheetIterator() as $sheet) //循环读取sheet
{
foreach($sheet->getRowIterator() as $row) //逐行处理
{
if($row->getRowIndex()<1) //确定从哪一行开始读取
{
continue;
}
foreach($row->getCellIterator() as $cell) //逐列读取
{
$data = $cell->getValue(); //获取cell中数据
echo $data;
}
echo '<br/>';
}
}
最新文章
- C#记录对象的变化
- CRM 2013 移动终端 介绍和PAD下载地址
- sqlzoo.net刷题5
- DOM(六)事件类型
- OpenGL笔试题
- error C2783: 无法为“T”推导 模板 参数
- javascript默认中文(汉字/标点)长度均为1的解决
- 1小时学Python脚本
- C趣味100道之58.拉丁方的一些想法。
- 读TIJ -2 一切都是对象
- get方式提交中文乱码(两次编码,一次解码)
- AnyDesk远程连接及异常处理
- canvas实现时钟
- 常用的7个SQl优化技巧
- Eclipse怎么恢复默认界面
- WPF 自定义DateControl DateTime控件(转)
- LaTeX数学公式基础
- Java实现微信小程序支付(准备)
- 【转载】无需图片,使用CSS3实现圆角按钮
- c#调用WinRAR软件压缩和解压文件