PHPExcel は、非常に強力な MS Office Excel ドキュメント生成ライブラリです。より複雑な形式でデータを出力する必要がある場合は、PHPExcel が適しています。ただし、その使用方法は比較的複雑です。覚えておくためにリストアップしてください。 PHP コード //PHPExcel クラス ライブラリのインクルード パスを設定します set_include_path( '.' . PATH_SEPARATOR . P_LIBS' . PATH_SEPARATOR . cel.php' ; // コメントを解除 // または // 処理オブジェクトを作成します 例 $objExcel = new PHPExcel(); // ファイル形式書き込みオブジェクト インスタンスを作成し、コメントを解除します // または //$objWriter->setOffice2003Compatibility(true); //****** ****** ********************** //基本的なドキュメントのプロパティを設定します $objProps = $ objExcel ->getProperties( ); $objProps ->setCreator( "ジール リー" ); $objProps ->setLastModifiedBy( "ジール リー" ); ;setTitle( "Office XLS テスト ドキュメント" ); $objProps ->setSubject( "Office XLS テスト ドキュメント、デモ" ) ;setDescription( "PHPExcel によって生成されたテスト ドキュメント" ); > $objProps ->setKeywords( "office Excel PHPExcel" ); $objProps ->setCategory( "Test" ); // ************************************* *** // 現在の値を設定します後続のコンテンツ操作のためのシート インデックス。 //通常、表示呼び出しは複数のシートを使用する場合にのみ必要です。 //デフォルトでは、PHPExcel は SheetIndex=0 で最初のシートを自動的に作成します > $objActSheet = $objExcel ->getActiveSheet(); //現在アクティブなシートの名前を設定します $objActSheet ->setTitle( 'TestSheet' ); //** *******************************************************************************************************************************************************************コンテンツ タイプ $objActSheet ->setCellValue( ' A1' , '文字列コンテンツ' ); // 文字列コンテンツ $objActSheet ->setCellValue( 'A2' , 26) ; 2 : A2) ') // 式 // 差分指定コンテンツタイプ $ ObjactSheet -& GT; SetCellValueExplicit (' A5 ',' 84747584787487584 ' 🎜> PHPExcel_Cell_DataType::TYPE_STRING); 🎜> //セルを結合 $ob jActSheet ->mergeCells( 'B1:C22' ); // セルを分割 $objActSheet ->unmergeCells( 'B1:C22' ); //* ****************** *************** //セルのスタイルを設定 // // 幅を設定 $objActSheet ->getColumnDimension( 'B' )->setAutoSize(true); $objActSheet ->getColumnDimension( 'A' )->setWidth(30); 🎜> //セルの内容の数値形式を設定します。 // // PHPExcel_Writer_Excel5 を使用してコンテンツを生成する場合、 // さまざまなカスタム書式設定メソッド、他のタイプはすべて使用可能通常はそうですが、setFormatCode // が FORMAT_NUMBER の場合、実際の効果はフォーマットが "0" に設定されないことです。必須 //コード行: //if($ifmt === '0') $ifmt = 1; 🎜 > // // すべて元の内容に従って表示されます。 $objStyleA5 ->getNumberFormat() ->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_NUMBER); //设置文字体 $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' ); // 色 $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( 'Zeal によって挿入された画像' ); $objDrawing ->setPath( './zeali.net.logo.gif' ); $objDrawing ->setHeight(36); $objDrawing ->setCoowned( 'C23' ); $objDrawing ->setOffsetX(10); $objDrawing ->setRotation(15); $objDrawing ->getShadow()->setVisible(true); $objDrawing ->getShadow()->setDirection(36); $objDrawing ->setWorksheet( $objActSheet ); //新しいワークシートを追加 $objExcel ->createSheet(); $objExcel ->getSheet(1)->setTitle( '测试2' ); //保护单元格 $objExcel ->getSheet(1)->getProtection()->setSheet(true); $objExcel ->getSheet(1)->protectCells( 'A1:C22' , 'PHPExcel' ); //***************************** ******* //出力内容 // $outputFileName = "output.xls" ; //到文件 ////$objWriter->save($outputFileName); //または //到浏览器 ////header("Content-Type: application/force-download"); ////header("Content-Type: application/octet-stream"); ////header("Content-Type: application/download"); ////header("Content-Transfer-Encoding: binary"); ////header("有効期限: 月曜日, 26 7月 1997 05:00:00 GMT"); ////header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT"); ////header("Pragma: no-cache"); ////$objWriter->save('php://output'); ?> 下は PHPExcel 读取Excel 文件の例: PHP 代 $fileName = 'excel.xls' ; $path = 'パス' ; $filePath = $path 。 $ファイル名 ; $PHPExcel = new PHPExcel(); $PHPReader = 新しい PHPExcel_Reader_Excel2007(); if (! $PHPReader ->canRead( $filePath )){ $PHPReader = new PHPExcel_Reader_Excel5(); if (! $PHPReader ->canRead( $filePath )){ echo 'Excel なし' ; 戻る ; } } $PHPExcel = $PHPReader ->load( $filePath ); $currentSheet = $PHPExcel ->getSheet(0); /**合計で列が何個あるかを取得する*/ $allColumn = $currentSheet ->getHighestColumn(); /**総行数を取得する*/ $allRow = array ( $currentSheet ->getHighestRow()); for ( $currentRow = 1; $currentRow <= $allRow ; $currentRow ++){ for ( $currentColumn = 'A' ; $currentColumn <= $allColumn ; $currentColumn ++){ $address = $currentColumn 。 $currentRow ; echo $currentSheet ->getCell( $address )->getValue()。 "t" ; } echo "n" ; }