好得很程序员自学网

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

PHP中利用PHPExcel导出Excel示例 - php高级应用

PHP中利用PHPExcel导出Excel示例

在php中导出excel有一种最简单的方法就是导出csv文件,但要做到真正的导出excel文件我们可以借助于PHPExcel插件来实现.

PHPExcel是个很强大的PHP操作Excel的类库,但是对于简单的将数据用PHP 导出 Excel来说这有点显得复杂,在google code上有一个PHP 导出 Excel的类,可以简单调用,很方便.

PHP中利用PHPExcel导出Excel示例代码如下:

<?php  // load library   require   'php-excel.class.php' ;  // create a simple 2-dimensional array   $data  =  array (          1 =>  array  ( 'Name' ,  'Surname' ),           array ( 'Schwarz' ,  'Oliver' ),           array ( 'Test' ,  'Peter' )          );  // generate file (constructor parameters are optional)   $xls  =  new  Excel_XML( 'UTF-8' , false,  'My Test Sheet' );  $xls ->addArray( $data );  $xls ->generateXML( 'my-test' );  ?> 

例2,代码如下:

<?php  /**    * PHPEXCEL生成excel文件    * @author:firmy    * @desc 支持任意行列数据生成excel文件,暂未添加单元格样式和对齐    */     require_once   'library/PHPExcel.php' ;  require_once   'library/PHPExcel/Reader/Excel2007.php' ;  require_once   'library/PHPExcel/Reader/Excel5.php' ;  include_once   'library/PHPExcel/IOFactory.php' ;    $fileName  =  "test_excel" ;  $headArr  =  array ( "第一列" , "第二列" , "第三列" );  $data  =  array ( array (1,2), array (1,3), array (5,7));  getExcel( $fileName , $headArr , $data );      function  getExcel( $fileName , $headArr , $data ){       if ( empty empty ( $data ) || ! is_array ( $data )){           die ( "data must be a array" );      }       if ( empty empty ( $fileName )){           exit ;      }       $date  =  date ( "Y_m_d" ,time());       $fileName  .=  "_{$date}.xlsx" ;         //创建新的PHPExcel对象        $objPHPExcel  =  new  PHPExcel();       $objProps  =  $objPHPExcel ->getProperties();         //设置表头        $key  = ord( "A" );       foreach ( $headArr   as   $v ){           $colum  =  chr ( $key );           $objPHPExcel ->setActiveSheetIndex(0) ->setCellValue( $colum . '1' ,  $v );           $key  += 1;      }             $column  = 2;       $objActSheet  =  $objPHPExcel ->getActiveSheet();       foreach ( $data   as   $key  =>  $rows ){  //行写入            $span  = ord( "A" );           foreach ( $rows   as   $keyName => $value ){ // 列写入                $j  =  chr ( $span );               $objActSheet ->setCellValue( $j . $column ,  $value );               $span ++;          }           $column ++;      }         $fileName  = iconv( "utf-8" ,  "gb2312" ,  $fileName );       //重命名表        $objPHPExcel ->getActiveSheet()->setTitle( 'Simple' );       //设置活动单指数到第一个表,所以Excel打开这是第一个表        $objPHPExcel ->setActiveSheetIndex(0);       //将输出重定向到一个客户端web浏览器(Excel2007)             header( 'Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' );            header( "Content-Disposition: attachment; filename=" $fileName "" );            header( 'Cache-Control: max-age=0' );             $objWriter  = PHPExcel_IOFactory::createWriter( $objPHPExcel ,  'Excel2007' ); //开源代码phpfensi测试数据              if (! empty empty ( $_GET [ 'excel' ])){               $objWriter ->save( 'php://output' ); //文件通过浏览器下载          } else {             $objWriter ->save( $fileName );  //脚本方式运行,保存在当前目录           }     exit ;    }  ?> 

phpexcel类的下载地址:http://php-excel.googlecode测试数据/files/php-excel-v1.1-20090910.zip

查看更多关于PHP中利用PHPExcel导出Excel示例 - php高级应用的详细内容...

  阅读:39次