PHP导出Excel实例讲解


Posted in PHP onJanuary 24, 2016

本次实现PHP导出Excel文件使用的是PHP开源程序PHPExcel,部分关键代码分享给大家,具体内容如下

<?php
error_reporting(E_ALL);
date_default_timezone_set('Asia/Shanghai');
require_once './Classes/PHPExcel.php';
$data=array(
  0=>array(
    'id'=>1001,

    'username'=>'张飞',
    'password'=>'123456',
    'address'=>'三国时高老庄250巷101室'
  ),
  1=>array(
    'id'=>1002,
    'username'=>'关羽',
    'password'=>'123456',
    'address'=>'三国时花果山'
  ),
  2=>array(
    'id'=>1003,
    'username'=>'曹操',
    'password'=>'123456',
    'address'=>'延安西路2055弄3号'
  ),
  3=>array(
    'id'=>1004,
    'username'=>'刘备',
    'password'=>'654321',
    'address'=>'愚园路188号3309室'
  )
);
$objPHPExcel=new PHPExcel();
$objPHPExcel->getProperties()->setCreator('https://3water.com')
               ->setLastModifiedBy('https://3water.com')
               ->setTitle('Office 2007 XLSX Document')
               ->setSubject('Office 2007 XLSX Document')
               ->setDescription('Document for Office 2007 XLSX, generated using PHP classes.')
               ->setKeywords('office 2007 openxml php')

               ->setCategory('Result file');

$objPHPExcel->setActiveSheetIndex(0)

      ->setCellValue('A1','ID')

      ->setCellValue('B1','用户名')

      ->setCellValue('C1','密码')

      ->setCellValue('D1','地址');

$i=2;     

foreach($data as $k=>$v){

  $objPHPExcel->setActiveSheetIndex(0)
      ->setCellValue('A'.$i,$v['id'])
      ->setCellValue('B'.$i,$v['username'])
      ->setCellValue('C'.$i,$v['password'])
      ->setCellValue('D'.$i,$v['address']);

  $i++;

}
$objPHPExcel->getActiveSheet()->setTitle('三年级2班');

$objPHPExcel->setActiveSheetIndex(0);
$filename=urlencode('学生信息统计表').'_'.date('Y-m-dHis');
 
//生成xlsx文件
/*
header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
header('Content-Disposition: attachment;filename="'.$filename.'.xlsx"');
header('Cache-Control: max-age=0');
$objWriter=PHPExcel_IOFactory::createWriter($objPHPExcel,'Excel2007');
*/

//生成xls文件
header('Content-Type: application/vnd.ms-excel');
header('Content-Disposition: attachment;filename="'.$filename.'.xls"');
header('Cache-Control: max-age=0');
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
$objWriter->save('php://output');
exit;

注意:如果导出中文时出现乱码,可以尝试将字符串转换成gb2312,代码类似如下:

查看代码打印

$str=mb_convert_encoding("gb2312","UTF-8",$str);

以上就是本文的全部内容,希望对大家的学习有所帮助。

PHP 相关文章推荐
PHP环境搭建最新方法
Sep 05 PHP
使用数据库保存session的方法
Oct 09 PHP
php中文字符截取防乱码
Mar 28 PHP
探讨PHP中this,self,parent的区别详解
Jun 08 PHP
基于GD2图形库的PHP生成图片缩略图类代码分享
Feb 08 PHP
PHP实现简单搜歌的方法
Jul 28 PHP
php类中的$this,static,final,const,self这几个关键字使用方法
Dec 14 PHP
thinkPHP实现递归循环栏目并按照树形结构无限极输出的方法
May 19 PHP
py文件转exe时包含paramiko模块出错解决方法
Aug 12 PHP
PHP在同一域名下两个不同的项目做独立登录机制详解
Sep 22 PHP
php写入txt乱码的解决方法
Sep 17 PHP
关于laravel-admin ueditor 集成并解决刷新的问题
Oct 21 PHP
PHP验证码生成原理和实现
Jan 24 #PHP
详解PHP对象的串行化与反串行化
Jan 24 #PHP
php上传图片获取路径及给表单字段赋值的方法
Jan 23 #PHP
高质量PHP代码的50个实用技巧必备(下)
Jan 22 #PHP
php使用timthumb生成缩略图的方法
Jan 22 #PHP
php session的锁和并发
Jan 22 #PHP
php5.4传引用时报错问题分析
Jan 22 #PHP
You might like
Apache2 httpd.conf 中文版
2006/11/17 PHP
PHPMailer安装方法及简单实例
2008/11/25 PHP
PHP 年龄计算函数(精确到天)
2012/06/07 PHP
利用PHP函数计算中英文字符串长度的方法
2014/11/11 PHP
PHP使用内置函数生成图片的方法详解
2016/05/09 PHP
利用PHPExcel实现Excel文件的写入和读取
2017/04/26 PHP
IE6图片加载的一个BUG解决方法
2010/07/13 Javascript
jquery mobile changepage的三种传参方法介绍
2013/09/13 Javascript
使用jquery获取网页中图片高度的两种方法
2013/09/26 Javascript
js下将阿拉伯数字每三位一逗号分隔(如:15000000转化为15,000,000)
2014/06/02 Javascript
javascript自定义滚动条实现代码
2020/04/20 Javascript
JQuery 传送中文乱码问题的简单解决办法
2016/05/24 Javascript
微信小程序  http请求封装详解及实例代码
2017/02/15 Javascript
Vue.js 2.0 移动端拍照压缩图片上传预览功能
2017/03/06 Javascript
基于vue实现网站前台的权限管理(前后端分离实践)
2018/01/13 Javascript
Angular2整合其他插件的方法
2018/01/20 Javascript
clipboard.js在移动端复制失败的解决方法
2018/06/13 Javascript
在Webpack中用url-loader处理图片和字体的问题
2020/04/28 Javascript
[14:20]刀塔大凶女神互压各路奇葩屌丝
2014/05/16 DOTA
Python中让MySQL查询结果返回字典类型的方法
2014/08/22 Python
python获得两个数组交集、并集、差集的方法
2015/03/27 Python
对于Python编程中一些重用与缩减的建议
2015/04/14 Python
Python3实现Web网页图片下载
2016/01/28 Python
让Python更加充分的使用Sqlite3
2017/12/11 Python
Python带动态参数功能的sqlite工具类
2018/05/26 Python
Python3.6日志Logging模块简单用法示例
2018/06/14 Python
Tensorflow训练模型越来越慢的2种解决方案
2020/02/07 Python
Python处理mysql特殊字符的问题
2020/03/02 Python
人力资源专员岗位职责
2014/01/30 职场文书
《浅水洼里的小鱼》听课反思
2014/02/28 职场文书
农村结婚典礼司仪主持词
2014/03/14 职场文书
有关爱国演讲稿
2014/05/07 职场文书
本科生求职信
2014/06/17 职场文书
2015年公共机构节能宣传周活动总结
2015/03/26 职场文书
2015年大学生党员承诺书
2015/04/27 职场文书
为什么说餐饮很难做,是因为你不了解这些新规则
2019/08/20 职场文书