PHPExcel的使用
1.当然是下载PHPexcel的插件了 http://phpexcel.codeplex.com/
2.应用插件 我把插件和需要用到的excel模板放的是不同文件夹的,excel我放在public下的upload文件夹里,excel插件我放在vendor文件里
3.控制器的引用方法,这些应该是必须的
注:因为我用的是thinkcmf5,里面有自带的phpexcel的方法,所以你们用其他框架的我不知道可不可以用,如果不可以用,请把Loader改为
1 vendor('PHPExcel.Classes.PHPExcel'); 2 vendor('PHPExcel.Classes.PHPExcel.IOFactory.PHPExcel_IOFactory');
上面的如果读不出来,可能就是里面的路径没写对
1 $dir = 'upload/'; //模板存放目录 2 $templateName = 'account.xlsx'; //模板表 3 $path = dirname(__FILE__); //找到当前脚本所在路径 4 Loader::import('PHPExcel.Classes.PHPExcel'); 5 Loader::import('PHPExcel.Classes.PHPExcel.IOFactory.PHPExcel_IOFactory'); 6 7 $PHPExcel = new \PHPExcel(); 8 $PHPReader = new \PHPExcel_Reader_Excel2007(); 9 //读取Excel 10 $PHPExcel = $PHPReader->load($dir.$templateName); 11 $currentSheet = $PHPExcel->getSheet(0);
4.样式设置,你也可以不设置
2 //设置水平居中 3 $PHPExcel->getActiveSheet()->getStyle('A')->getAlignment()->setHorizontal( \PHPExcel_Style_Alignment::HORIZONTAL_CENTER); 4 $PHPExcel->getActiveSheet()->getStyle('B')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER); 5 $PHPExcel->getActiveSheet()->getStyle('C')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER); 6 $PHPExcel->getActiveSheet()->getStyle('D')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER); 7 $PHPExcel->getActiveSheet()->getStyle('E')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER); 8 $PHPExcel->getActiveSheet()->getStyle('F')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER); 9 $PHPExcel->getActiveSheet()->getStyle('G')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER); 10 $PHPExcel->getActiveSheet()->getStyle('H')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER); 11 $PHPExcel->getActiveSheet()->getStyle('I')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER); 12 $PHPExcel->getActiveSheet()->getStyle('J')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER); 13 $PHPExcel->getActiveSheet()->getStyle('K')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
5.把数据导入到excel模板里面,我的是个二维数组
1 for($i=0;$i<count($deal);$i++){ 2 $currentSheet->setCellValue('A'.($i+3), date('Y-m-d H:i:s', $deal[$i]['create_time'])); //日期 3 $currentSheet->setCellValue('B'.($i+3),$deal[$i]['deal_type']); //交易类型 4 $currentSheet->setCellValue('C'.($i+3),$deal[$i]['roll_name']); //支出账户名称 5 $currentSheet->setCellValue('D'.($i+3),$deal[$i]['roll_user']); //支出账号 6 $currentSheet->setCellValue('E'.($i+3),$deal[$i]['receive_name']); //收入账号名称 7 $currentSheet->setCellValue('F'.($i+3),$deal[$i]['receive_user']); //收入账户 8 $currentSheet->setCellValue('G'.($i+3),$deal[$i]['account']); //交易金额 9 $currentSheet->setCellValue('H'.($i+3),$deal[$i]['roll_account']); //支出账号交易后余额 10 $currentSheet->setCellValue('I'.($i+3),$deal[$i]['receive_account']); //收入账号交易后余额 11 $currentSheet->setCellValue('J'.($i+3),$deal[$i]['user']); //操作员 12 $currentSheet->setCellValue('K'.($i+3),$deal[$i]['remark']); //订单备注 13 }
6.这样就可以下载下来了,有两种输出格式,excel输出是有表格线条的,网页输出没有表格线条
1 ob_clean(); 2 ob_start(); 3 $objWriteHTML = new \PHPExcel_Writer_Excel2007($PHPExcel); //输出EXCLl格式的对象 4 header("Content-type: application/octet-stream;charset=utf-8"); 5 header('Content-Type: application/vnd.ms-excel'); 6 header('Content-Disposition: attachment;filename="funds.xlsx"'); //日期为文件名后缀 7 header('Cache-Control: max-age=0'); 8 $objWriteHTML->save("php://output"); 9 10 exit;//退出
7.完成
转载于:https://www.cnblogs.com/luojie-/p/7754181.html
PHPExcel的使用相关推荐
- FastAdmin扩展PHPEXCEL,PHP7.3高版本兼容问题
THINKPHP扩展PHPEXCEL与PHP7.3高版本兼容问题 框架:THINKPHP5,PHPEXCEL版本:1.81 无法导出EXCEL原因为Shared/OLE.php第290行使用conti ...
- php excel 追加写入,phpexcel写入追加已有的excel文件
/** * 在已有excel表中插入数据例子 */ public function readyExcel($filename){ vendor("PHPExcel.PHPExcel" ...
- PHPExcel使用-使用PHPExcel导出文件-导出MySQL数据
现在数据库里面有一组数据,我们将它按照不同的难度进行分sheet. 首先我们需要写一个mysql的配置文件- db.config.php(utf-8编码) : <?php $dbconfig= ...
- 使用PHPExcel 对表格进行,读取和写入的操作。。。。
下面的代码是使用PHPExcel 对多个表格数据进行读取, 然后整合的写入新的表格的方法!!!代码有点粗糙 , 多多保函!!! 这里有些地方注意下,如果你的表格数据过大, 一定要记得修改php.ini ...
- Laravel 上使用 phpexcel的两种方式
原创 2017年06月24日 20:24:31 1229 文章采集与网上 方式1.使用原生的phpexcel , http://blog.csdn.net/CSwfe/article/details/ ...
- phpexcel导出超过26列解决方案
phpexcel导出超过26列解决方案 原文:phpexcel导出超过26列解决方案 将列的数字序号转成字母使用,代码如下: PHPExcel_Cell::stringFromColumnInde ...
- php 批量导出excel文件,PHPEXCEL批量导出
// 引入phpexcel核心类文件 require_once ROOT_PATH . '/includes/phpexcel/Classes/PHPExcel.php'; // 实例化excel类 ...
- php 读取excel转html,PHPExcel 转HTML
标签:jre pat ide sheet php ade 文件名 obj exce $filePath = './123.xls'; $fileType = \PHPE ...
- 【PHPExcel】设置打印格式
//错误处理 时区设置 error_reporting(E_ALL); ini_set('display_errors',TRUE); ini_set('display_startup_errors' ...
- 【PHPExcel】数学公式
//错误处理 时区设置 error_reporting(E_ALL); ini_set('display_errors',TRUE); ini_set('display_startup_errors' ...
最新文章
- Camera+销量突破200万 创始人分享成功经验
- 全球32家人工智能独角兽公司
- mysql启动warning: World-writable config file
- 聊下 git 使用前的一些注意事项
- mysql ef_在EF中使用MySQL的方法及常见问题
- django报错500排查方法
- 【学习笔记】单例模式(枚举、校验锁、volatile、反射破坏)
- Java 猜字谜游戏
- img解包打包工具_Python开发GUI实战:图片转换素描画工具!
- Unity脚本运行时更新带来了什么?
- 【多视图几何】TUM 课程 第6章 多视图重建
- [转载] 10 个最值得 Python 新人练手的有趣项目
- JSTL fmt 标签 使用
- 如何写好工作周报?工作周报模板
- WINDOWS下内存泄漏检测工具VLD(Visual Leak Detector)的使用
- 【深度好文】二维图像傅里叶变换 YYDS
- Jetpack新成员,App Startup一篇就懂
- kafka 分区多节点消费
- 《Python编程从入门到实践 第二版》第十六章练习
- 解决fileReader读取文件乱码