Yii中使用PHPExcel导出Excel的方法


Posted in PHP onDecember 26, 2014

本文实例讲述了Yii中使用PHPExcel导出Excel的方法。分享给大家供大家参考。具体分析如下:

最近在研究PHP的Yii框架,很喜欢,碰到导出Excel的问题,研究了一下,就有了下面的方法.

1、首先在cofig/main.php中添加对PHPExcel的引用,我的方法是这样,代码如下:

// autoloading model and component classes 

    'import'=>array( 

        /*'application.modules.srbac.controllers.SBaseController',*/        

        'application.models.*', 

        'application.components.*', 

        'application.extensions.phpexcel.*', 

),

2、当然要记得将PHPExcel整个目录复制到项目的 "protected/extensions/" 目录下面.

3、按照下面的代码修改PHPExcel代码目录里的Autoloader.php文件,代码如下:

public static function Register() { 

/*if (function_exists('__autoload')) { 

            //    Register any existing autoloader function with SPL, so we don't get any clashes 

            spl_autoload_register('__autoload'); 

        } 

        //    Register ourselves with SPL 

        return spl_autoload_register(array('PHPExcel_Autoloader', 'Load'));*/ 

        $functions = spl_autoload_functions(); 

            foreach ( $functions as  $function) 

                spl_autoload_unregister($function); 

            $functions = array_merge(array(array('PHPExcel_Autoloader','Load')),$functions); 

            foreach ( $functions as $function) 

                $x = spl_autoload_register($function); 

            return $x; 

}    //    function Register()

上面的函数中,注释掉的是原有的代码.

4、下面的代码是输出Excel,以及一些常用的属性设置,在你的Controller中,代码如下:

$objectPHPExcel = new PHPExcel(); 

$objectPHPExcel->setActiveSheetIndex(0); 

 

ob_end_clean(); 

ob_start(); 

 

header('Content-Type : application/vnd.ms-excel'); 

header('Content-Disposition:attachment;filename="'.'xiaoqiang-'.date("Ymj").'.xls"'); 

$objWriter= PHPExcel_IOFactory::createWriter($objectPHPExcel,'Excel5'); 

$objWriter->save('php://output');

希望本文所述对大家基于Yii框架的php程序设计有所帮助。

PHP 相关文章推荐
php中的MVC模式运用技巧
May 03 PHP
获取远程文件大小的php函数
Jan 11 PHP
PHP 检查扩展库或函数是否可用的代码
Apr 06 PHP
PHP和.net中des加解密的实现方法
Feb 27 PHP
php中将html中的br换行符转换为文本输入中的换行符
Mar 26 PHP
关于PHP session 存储方式的详细介绍
Jun 25 PHP
php更新mysql后获取改变行数的方法
Dec 25 PHP
ECSHOP在PHP5.5及高版本上报错的解决方法
Aug 31 PHP
Zend Framework动作助手(Zend_Controller_Action_Helper)用法详解
Mar 05 PHP
PHP网站自动化配置的实现方法(必看)
May 27 PHP
yii2 url重写并隐藏index.php方法
Dec 10 PHP
解决laravel资源加载路径设置的问题
Oct 14 PHP
PHP中mysqli_affected_rows作用行数返回值分析
Dec 26 #PHP
PHP使用memcache缓存技术提高响应速度的方法
Dec 26 #PHP
PHP调用MySQL存储过程并返回值的方法
Dec 26 #PHP
php+ajax实时输入自动搜索匹配的方法
Dec 26 #PHP
windows下配置php5.5开发环境及开发扩展
Dec 25 #PHP
PHP中require和include路径问题详解
Dec 25 #PHP
Yii框架调试心得--在页面输出执行sql语句
Dec 25 #PHP
You might like
php生成SessionID和图片校验码的思路和实现代码
2009/03/10 PHP
php网站被挂木马后的修复方法总结
2014/11/06 PHP
PHP实现Javascript中的escape及unescape函数代码分享
2015/02/10 PHP
php生成二维码
2015/08/10 PHP
Yii 2.0中场景的使用教程
2017/06/02 PHP
Laravel框架表单验证操作实例分析
2019/09/30 PHP
js 获取中文拼音,Select自动匹配字母获取值的代码
2009/09/23 Javascript
js 处理URL实用技巧
2010/11/23 Javascript
jQuery EasyUI API 中文文档 - ProgressBar 进度条
2011/09/29 Javascript
Jquery.addClass始终无效原因分析
2013/09/08 Javascript
js定时器的使用(实例讲解)
2014/01/06 Javascript
jQuery setTimeout传递字符串参数报错的解决方法
2014/06/09 Javascript
详解JavaScript中jQuery和Ajax以及JSONP的联合使用
2015/08/13 Javascript
nodejs操作mysql实现增删改查的实例
2017/05/28 NodeJs
基于jQuery的表单填充实例
2017/08/22 jQuery
angular5 子组件监听父组件传入值的变化方法
2018/09/30 Javascript
BootStrap表单验证中的非Submit类型按钮点击时触发验证的坑
2019/09/05 Javascript
生成无限制的微信小程序码的示例代码
2019/09/20 Javascript
对vuex中getters计算过滤操作详解
2019/11/06 Javascript
vue如何搭建多页面多系统应用
2020/06/17 Javascript
解决vuex数据页面刷新后初始化操作
2020/07/26 Javascript
[01:46]辉夜杯—打造中国DOTA新格局
2015/12/25 DOTA
python应用程序在windows下不出现cmd窗口的办法
2014/05/29 Python
Python使用pickle模块报错EOFError Ran out of input的解决方法
2018/08/16 Python
Python3之字节串bytes与字节数组bytearray的使用详解
2019/08/27 Python
python+gdal+遥感图像拼接(mosaic)的实例
2020/03/10 Python
Python类和实例的属性机制原理详解
2020/03/21 Python
详解Anaconda 的安装教程
2020/09/23 Python
大学生自我评价怎样写好
2013/10/23 职场文书
送餐员岗位职责范本
2014/02/21 职场文书
三分钟演讲稿范文
2014/04/24 职场文书
大学社团招新的通讯稿
2014/09/10 职场文书
文员转正自我鉴定怎么写
2014/09/29 职场文书
审计局班子四风对照检查材料思想汇报
2014/10/07 职场文书
补充协议书
2015/01/28 职场文书
pytorch 一行代码查看网络参数总量的实现
2021/05/12 Python