好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

Yii中使用PHPExcel导出Excel实例代码 - php高级应用

Yii中使用PHPExcel导出Excel实例代码

文章来给大家介绍在yii框架中利用PHPExcel插件来快速实例导出excel数据的具体方法,有在使用yii的同学不防进入参考一下.

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

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

// autoloading model and component classes        'import' => array (           /*'application.modules.srbac.controllers.SBaseController',*/                   'application.models.*' ,           'application测试数据ponents.*' ,           '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();            //开源代码phpfensi测试数据                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中使用PHPExcel导出Excel实例代码 - php高级应用的详细内容...

  阅读:50次