使用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 相关文章推荐
PHP与MySQL交互使用详解
Oct 09 PHP
PHP调用三种数据库的方法(1)
Oct 09 PHP
通俗易懂的php防注入代码
Apr 07 PHP
PHP原理之异常机制深入分析
Aug 08 PHP
PHP文件上传原理简单分析
May 29 PHP
php dirname(__FILE__) 获取当前文件的绝对路径
Jun 28 PHP
PHP中数字检测is_numeric与ctype_digit的区别介绍
Oct 04 PHP
PHP调用MySQL存储过程并返回值的方法
Dec 26 PHP
PHP Callable强制指定回调类型的方法
Aug 30 PHP
PHP多个图片压缩成ZIP的方法
Aug 18 PHP
通过PHP实现获取访问用户IP
May 09 PHP
PHP安全之register_globals的on和off的区别
Jul 23 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生成验证码时“图像因其本身有错无法显示”的解决方法
2013/08/07 PHP
从零开始学YII2框架(四)扩展插件yii2-kartikgii
2014/08/20 PHP
PHP自定义函数实现assign()数组分配到模板及extract()变量分配到模板功能示例
2018/05/23 PHP
关于laravel模板中生成URL的几种模式总结
2019/10/18 PHP
gearman管理工具GearmanManager的安装与php使用方法示例
2020/02/27 PHP
几款极品的javascript压缩混淆工具
2007/05/16 Javascript
WordPress 照片lightbox效果的运用几点
2009/06/22 Javascript
javascript 事件查询综合 推荐收藏
2010/03/10 Javascript
一个基于jQuery的树型插件(OrangeTree)使用介绍
2012/05/03 Javascript
基于jquery的时间段实现代码
2012/08/02 Javascript
使用javascipt---实现二分查找法
2013/04/10 Javascript
Jquery和JS用外部变量获取Ajax返回的参数值的方法实例(超简单)
2013/06/17 Javascript
extjs 时间范围选择自动判断的实现代码
2014/06/24 Javascript
JS中使用apply方法通过不同数量的参数调用函数的方法
2016/05/31 Javascript
jquery实现全选、不选、反选的两种方法
2016/09/06 Javascript
BootStrap3使用错误记录及解决办法
2016/12/22 Javascript
Vue 父子组件的数据传递、修改和更新方法
2018/03/01 Javascript
vue.js移动数组位置,同时更新视图的方法
2018/03/08 Javascript
js实现时分秒倒计时
2019/12/03 Javascript
[01:25:38]DOTA2-DPC中国联赛 正赛 VG vs LBZS BO3 第一场 1月19日
2021/03/11 DOTA
分享一下如何编写高效且优雅的 Python 代码
2017/09/07 Python
Python3.6简单的操作Mysql数据库的三个实例
2018/10/17 Python
python getopt模块使用实例解析
2019/12/18 Python
浅谈css3中的渐进增强和优雅降级
2017/12/01 HTML / CSS
John Hardy官方网站:手工设计首饰的奢侈品牌
2017/07/05 全球购物
英国床和浴室商场:Bed & Bath Emporium
2018/05/20 全球购物
夏洛特和乔治婴儿和儿童时装精品店:Charlotte and George
2018/06/06 全球购物
经典演讲稿范文
2013/12/30 职场文书
公司授权委托书
2014/04/04 职场文书
《她是我的朋友》教学反思
2014/04/26 职场文书
法院授权委托书范文
2014/08/02 职场文书
家庭财产分割协议书范本
2014/11/24 职场文书
亲戚关系证明
2015/06/24 职场文书
中秋联欢会主持词
2015/07/04 职场文书
Win7/8.1用户可以免费升级到Windows 11系统吗?
2021/11/21 数码科技
Win11 Beta 预览版 22621.575 和 22622.575更新补丁KB5016694发布(附更新内容大全)
2022/08/14 数码科技