好得很程序员自学网

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

PHPExcel用法详细的介绍 - php类库

PHPExcel用法详细的介绍

PHPExcel下载地址:http://phpexcel.codeplex测试数据/

导入PHPExcel.php或者其他文件,代码如下:

require_once   'PHPExcel.php' ; ////require_once'PHPExcel/Writer/Excel5.php';     // 用于其他低版本xls    // or   ////require_once'PHPExcel/Writer/Excel2007.php'; // 用于excel-2007 格式   // 创建一个处理对象实例   $objExcel  =  new  PHPExcel(); // 创建文件格式写入对象实例, uncomment   ////$objWriter = newPHPExcel_Writer_Excel5($objExcel);     // 用于其他版本格式   // or   ////$objWriter = newPHPExcel_Writer_Excel2007($objExcel); // 用于2007 格式   $objProps  =  $objExcel ->getProperties (); //设置创建者   $objProps ->setCreator ( 'XuLulu' ); //设置最后修改者   $objProps ->setLastModifiedBy( "XuLulu" );  //描述   $objProps ->setDescription( "摩比班级" );  //设置标题   $objProps ->setTitle (  '管理器'  );  //设置题目   $objProps ->setSubject( "OfficeXLS Test Document, Demo" );  //设置关键字   $objProps ->setKeywords (  '管理器'  );  //设置分类   $objProps ->setCategory (  "Test" );  //工作表设置   $objExcel ->setActiveSheetIndex( 0 );  $objActSheet  =  $objExcel ->getActiveSheet ();  //单元格赋值   例:   $objActSheet ->setCellValue (  'A1' ,  'ID' );  $objActSheet ->setCellValue (  'B1' ,  'HashCode' );  $objActSheet ->setCellValue (  'C1' ,  'ModelName' );  $objActSheet ->setCellValue (  'D1' ,  'IndexName' );      $objActSheet ->setCellValue( 'A1' ,  '字符串内容' );   // 字符串内容   $objActSheet ->setCellValue( 'A2' , 26);             // 数值   $objActSheet ->setCellValue( 'A3' , true);           // 布尔值   $objActSheet ->setCellValue( 'A4' ,  '=SUM(A2:A2)' );  // 公式   //自动设置单元格宽度   例:   $objActSheet ->getColumnDimension( 'A' )->setAutoSize(true);  //手动设置单元格的宽度   例:   //$objActSheet->getColumnDimension('A')->setWidth(10);   //导出的文件名   $outputFileName  = iconv (  'UTF-8' ,  'gb2312' ,  'XuLulu_' . time() .  '.xlsx'  );     //直接导出文件   $objWriter ->save (  $outputFileName  );     //文件直接输出到浏览器   header (  'Pragma:public' ); header (  'Expires:0' ); header (  'Cache-Control:must-revalidate,post-check=0,pre-check=0' );  header (  'Content-Type:application/force-download' );  header (  'Content-Type:application/vnd.ms-excel' );  header (  'Content-Type:application/octet-stream' );  header (  'Content-Type:application/download' );  header (  'Content-Disposition:attachment;filename=' .  $outputFileName  );  header (  'Content-Transfer-Encoding:binary' );  $objWriter ->save (  'php://output' ); 

其他设置:

//显式指定内容类型    $objActSheet ->setCellValueExplicit( 'A5' , '847475847857487584' ,  PHPExcel_Cell_DataType::TYPE_STRING);   //合并单元格   $objActSheet ->mergeCells( 'B1:C22' );   //分离单元格   $objActSheet ->unmergeCells( 'B1:C22' );  //得到单元格的样式   $objStyleA5  =  $objActSheet ->getStyle( 'A5' );  //设置字体    $objFontA5  =  $objStyleA5 ->getFont();  $objFontA5 ->setName( 'Courier New' );  $objFontA5 ->setSize(10);  $objFontA5 ->setBold(true);  $objFontA5 ->setUnderline(PHPExcel_Style_Font::UNDERLINE_SINGLE);  $objFontA5 ->getColor()->setARGB( 'FF999999' );  //设置对齐方式   $objAlignA5  =  $objStyleA5 ->getAlignment();   $objAlignA5 ->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);  $objAlignA5 ->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);  //设置边框   $objBorderA5  =  $objStyleA5 ->getBorders();  $objBorderA5 ->getTop()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);  $objBorderA5 ->getTop()->getColor()->setARGB( 'FFFF0000' ); // color   $objBorderA5 ->getBottom()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);  $objBorderA5 ->getLeft()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);  $objBorderA5 ->getRight()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);  //设置填充颜色    $objFillA5  =  $objStyleA5 ->getFill();   $objFillA5 ->setFillType(PHPExcel_Style_Fill::FILL_SOLID);   $objFillA5 ->getStartColor()->setARGB( 'FFEEEEEE' );   //从指定的单元格复制样式信息.    $objActSheet ->duplicateStyle( $objStyleA5 , 'B1:C22' );   //*************************************   //添加图片    $objDrawing  =  new  PHPExcel_Worksheet_Drawing();   $objDrawing ->setName( 'ZealImg' );   $objDrawing ->setDescription( 'Image inserted byZeal' );   $objDrawing ->setPath( './zeali.net.logo.gif' );   $objDrawing ->setHeight(36);   $objDrawing ->setCoordinates( 'C23' );   $objDrawing ->setOffsetX(10);   $objDrawing ->setRotation(15);   $objDrawing ->getShadow()->setVisible(true);   $objDrawing ->getShadow()->setDirection(36);   $objDrawing ->setWorksheet( $objActSheet );   //添加一个新的worksheet    $objExcel ->createSheet();   $objExcel ->getSheet(1)->setTitle( '测试2' );   //保护单元格    $objExcel ->getSheet(1)->getProtection()->setSheet(true);   $objExcel ->getSheet(1)->protectCells( 'A1:C22' , 'PHPExcel' ); 

PHPExcel在cakephp中应用:

在Vendors/下创建一个文件夹Excel,将PHPExcel的目录如下,在要调用的Controller下的方法写如下代码:

App::import ( 'Vendor', 'Excel', array ('file' =>'PHPExcel.php' ) ); 

就可以实例化PHPExcel;具体跟以上情况一样,这只是其中的一种方法,还有其他一些方法.

导出excel表格的还有其他一些形式,如php自带的函数fputcsv();也可以导出csv格式的表格.

查看更多关于PHPExcel用法详细的介绍 - php类库的详细内容...

  阅读:54次