使用PHPExcel实现数据批量导出为excel表格的方法(必看)


Posted in PHP onJune 09, 2017

首先需要下载PHPExecel类文件,帮助文档可以参考PHPExcel中文帮助手册|PHPExcel使用方法。

下面直接上例子,是我自己写的一个简单的批量导出数据为excel的例子

前台页面 比较简单,就是一个超链接,跳转到处理页面,超链接也可以跟一些参数(看需求)!

<a href="./Process1.php" rel="external nofollow" >导出excel表格</a>

后台Process.php页面

/**
* 批量导出数据
* @param $arr 从数据库查询出来,即要导出的数据
*  $name excel表歌名
*/
function expExcel($arr,$name){
 
 require_once 'PHPExcel.php';
 //实例化
 $objPHPExcel = new PHPExcel();
 /*右键属性所显示的信息*/
  $objPHPExcel->getProperties()->setCreator("zxf")  //作者
       ->setLastModifiedBy("zxf")  //最后一次保存者
       ->setTitle('数据EXCEL导出')  //标题
       ->setSubject('数据EXCEL导出') //主题
       ->setDescription('导出数据')  //描述
       ->setKeywords("excel")   //标记
       ->setCategory("result file");  //类别


 //设置当前的表格 
 $objPHPExcel->setActiveSheetIndex(0);
 // 设置表格第一行显示内容
 $objPHPExcel->getActiveSheet()
  ->setCellValue('A1', '业主姓名')
  ->setCellValue('B1', '密码')
  ->setCellValue('C1', '手机号码')
  ->setCellValue('D1', '地址')
  //设置第一行为红色字体
  ->getStyle('A1:D1')->getFont()->getColor()->setARGB(PHPExcel_Style_Color::COLOR_RED);

 $key = 1;
 /*以下就是对处理Excel里的数据,横着取数据*/
 foreach($arr as $v){

 //设置循环从第二行开始
 $key++;
  $objPHPExcel->getActiveSheet()

     //Excel的第A列,name是你查出数组的键值字段,下面以此类推
     ->setCellValue('A'.$key, $v['name']) 
     ->setCellValue('B'.$key, $v['pwd'])
     ->setCellValue('C'.$key, $v['phone'])
     ->setCellValue('D'.$key, $v['address']);

 }
 //设置当前的表格 
 $objPHPExcel->setActiveSheetIndex(0);
 ob_end_clean();  //清除缓冲区,避免乱码
  header('Content-Type: application/vnd.ms-excel'); //文件类型
  header('Content-Disposition: attachment;filename="'.$name.'.xls"'); //文件名
  header('Cache-Control: max-age=0');
  header('Content-Type: text/html; charset=utf-8'); //编码
  $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');  //excel 2003
  $objWriter->save('php://output'); 
  exit;

}

/***********调用**********************/
header("Content-type:text/html;charset=utf-8");

//链接数据库
$link = @mysql_connect('localhost','root','') or die('连接数据库失败');
mysql_select_db('test',$link);
mysql_query('set names utf8');

//先获取数据
$sql = "select * from house";
$res = mysql_query($sql);
$arr = array();
//把$res=>$arr,把结果集内容转移到一个数组中
while ($row = mysql_fetch_assoc($res)){
 $arr[] = $row;
}

//excel表格名
$name = "用户表";

//调用
expExcel($arr,$name)

使用PHPExcel导出数据至此完毕,对于使用PHPExcel导入到数据库可以参看使用PHPExcel实现数据批量上传到数据库

以上这篇使用PHPExcel实现数据批量导出为excel表格的方法(必看)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
Notice: Undefined index: page in E:\PHP\test.php on line 14
Nov 02 PHP
php 中文字符串首字母的获取函数分享
Nov 04 PHP
递归删除一个节点以及该节点下的所有节点示例
Mar 19 PHP
ThinkPHP使用心得分享-上传类UploadFile的使用
May 15 PHP
PHP实现图片压缩的两则实例
Jul 19 PHP
关于URL最大长度限制的相关资料查证
Dec 23 PHP
php中 ob_start等函数截取标准输出的方法
Jun 22 PHP
配置Nginx+PHP的正确思路与过程
May 10 PHP
Zend Framework入门教程之Zend_View组件用法示例
Dec 09 PHP
php单元测试phpunit入门实例教程
Nov 17 PHP
在laravel中实现ORM模型使用第二个数据库设置
Oct 24 PHP
PHP 时间处理类Carbon
May 20 PHP
ThinkPHP+EasyUI之ComboTree中的会计科目树形菜单实现方法
Jun 09 #PHP
php使用crypt()函数进行加密
Jun 08 #PHP
微信封装的调用微信签名包的类库
Jun 08 #PHP
微信公众号实现会员卡领取功能
Jun 08 #PHP
php图像验证码生成代码
Jun 08 #PHP
php面向对象的用户登录身份验证
Jun 08 #PHP
php实现用户注册密码的crypt加密
Jun 08 #PHP
You might like
PHP实现根据银行卡号判断银行
2015/04/29 PHP
php的PDO事务处理机制实例分析
2017/02/16 PHP
php无限级分类实现评论及回复功能
2019/02/18 PHP
PHP底层运行机制与工作原理详解
2020/07/31 PHP
基于php伪静态的实现方法解析
2020/07/31 PHP
javascript闭包的理解和实例
2010/08/12 Javascript
js 得到文件后缀(通过正则实现)
2013/07/08 Javascript
js二维数组排序的简单示例代码
2014/01/24 Javascript
javascript中函数作为参数调用的方法
2015/02/09 Javascript
js实现漂浮回顶部按钮实例
2015/05/06 Javascript
js数组操作方法总结(必看篇)
2016/11/22 Javascript
利用Bootstrap实现表格复选框checkbox全选
2016/12/21 Javascript
JS区分Object与Aarry的六种方法总结
2017/02/27 Javascript
Vue.js组件tab实现选项卡切换
2020/03/23 Javascript
微信小程序发送短信验证码完整实例
2019/01/07 Javascript
详解如何探测小程序返回到webview页面
2019/05/14 Javascript
详解如何在Vue项目中发送jsonp请求
2019/10/25 Javascript
js实现双人五子棋小游戏
2020/05/28 Javascript
Python使用稀疏矩阵节省内存实例
2014/06/27 Python
Python scikit-learn 做线性回归的示例代码
2017/11/01 Python
python 读取摄像头数据并保存的实例
2018/08/03 Python
python将控制台输出保存至文件的方法
2019/01/07 Python
Python json格式化打印实现过程解析
2020/07/21 Python
Python3实现英文字母转换哥特式字体实例代码
2020/09/01 Python
日本无添加化妆品:HABA
2016/08/18 全球购物
Emporio Armani腕表天猫官方旗舰店:乔治·阿玛尼为年轻人设计的副线品牌
2017/07/02 全球购物
标签和贴纸印刷:Lightning Labels
2018/03/22 全球购物
精致的手工皮鞋:Shoe Embassy
2019/11/08 全球购物
俄罗斯购买剧院和演唱会门票网站:Parter.ru
2019/11/09 全球购物
C面试题
2015/10/08 面试题
大班亲子运动会方案
2014/06/10 职场文书
画展邀请函
2015/01/31 职场文书
2015年反洗钱工作总结
2015/04/25 职场文书
2015年行政人事工作总结
2015/05/21 职场文书
浅谈TypeScript 索引签名的理解
2021/10/16 Javascript
浅谈Redis的事件驱动模型
2022/05/30 Redis