Heim  >  Artikel  >  php教程  >  Yii中使用PHPExcel导出Excel实例代码

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

WBOY
WBOYOriginal
2016-05-25 16:37:401323Durchsuche

文章来给大家介绍在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.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');

   


文章网址:

随意转载^^但请附上教程地址。

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn