ホームページ  >  記事  >  バックエンド開発  >  PHPExcel_PHP チュートリアルの一般的なメソッドの概要

PHPExcel_PHP チュートリアルの一般的なメソッドの概要

WBOY
WBOYオリジナル
2016-07-13 17:45:461067ブラウズ

 

  1. //PHPExcel クラス ライブラリのインクルード パスを設定します
  2. set_include_path(
  3. '.'.PATH_SEPARATOR . 「D:ZealPHP_LIBS」
  4. . get_include_path()); /**www.2cto.com
  5. * 以下は //// で始まる行の使用例です。実際のニーズに基づいてください。
  6. * 対応する行のコメントを開きます。
  7. * Excel5を使用する場合、出力コンテンツはGBKエンコードされている必要があります。
  8. */
  9. require_once
  10. 'PHPExcel.php';
  11. // コメントを解除
  12. ////require_once 'PHPExcel/Writer/Excel5.php' // 他の下位バージョンの xls に使用されます
  13. ;
  14. // または
  15. ////require_once 'PHPExcel/Writer/Excel2007.php' // Excel-2007 形式の場合
  16. ;
  17. //処理オブジェクトインスタンスを作成する
  18. $objExcel =
  19. 新しい
  20. PHPExcel(); //ファイル形式書き込みオブジェクトのインスタンスを作成し、コメントを解除します
  21. ////$objWriter = new PHPExcel_Writer_Excel5($objExcel) // 他のバージョンの形式に使用されます ;
  22. // または
  23. ////$objWriter = new PHPExcel_Writer_Excel2007($objExcel) // 2007 形式の場合
  24. ;
  25. //$objWriter->setOffice2003Compatibility(true);
  26. //************************************
  27. //ドキュメントの基本プロパティを設定します
  28. $objProps =
  29. $objExcel
  30. ->getProperties(); $objProps
  31. ->setCreator(
  32. "ジール・リー");
  33. $objProps
  34. ->setLastModifiedBy("ジール・リー"); $objProps
  35. ->setTitle(
  36. "Office XLS テスト ドキュメント"); $objProps->setSubject(
  37. "Office XLS テスト ドキュメント、デモ"
  38. ); $objProps->setDescription("PHPExcel によって生成されたテスト ドキュメント。"
  39. );
  40. $objProps->setKeywords("office Excel PHPExcel");
  41. $objProps
  42. ->setCategory("テスト"); //************************************
  43. //後続のコンテンツ操作のために現在のシート インデックスを設定します。
  44. //通常、表示呼び出しは複数のシートを使用する場合にのみ必要です。
  45. //デフォルトでは、PHPExcel は自動的に最初のシートを作成し、SheetIndex=0 を設定します
  46. $objExcel->setActiveSheetIndex(0);
  47. $objActSheet
  48. = $objExcel->getActiveSheet(); //現在アクティブなシートの名前を設定します
  49. $objActSheet
  50. ->setTitle(
  51. 'テストシート'); //************************************
  52. //セルの内容を設定します
  53. //
  54. //PHPExcel は受信コンテンツに基づいてセルのコンテンツ タイプを自動的に決定します
  55. $objActSheet->setCellValue(
  56. 'A1'
  57. , '文字列コンテンツ'); $objActSheet->setCellValue('A2', 26); $objActSheet
  58. ->setCellValue(
  59. 'A3', true); $objActSheet->setCellValue('A4',
  60. '=SUM(A2:A2)'
  61. ); //コンテンツタイプを明示的に指定します $objActSheet->setCellValueExplicit(
  62. 'A5'
  63. , '847475847857487584', PHPExcel_Cell_DataType::TYPE_STRING); //セルを結合
  64. $objActSheet
  65. ->mergeCells('B1:C22'
  66. );
  67. //セルを分離する $objActSheet->unmergeCells('B1:C22'
  68. );
  69. //************************************
  70. //セルスタイルを設定します
  71. //
  72. //幅を設定します
  73. $objActSheet
  74. ->getColumnDimension('B')->setAutoSize(true); $objActSheet
  75. ->getColumnDimension(
  76. 'A')->setWidth(30);
  77. $objStyleA5
  78. = $objActSheet
  79. ->getStyle(
  80. 'A5');
  81. //セルの内容の数値形式を設定します。
  82. //
  83. //PHPExcel_Writer_Excel5 を使用してコンテンツを生成する場合、
  84. //ここで、PHPExcel_Style_NumberFormat クラスで定義されている const 変数に注意してください
  85. //さまざまなカスタム書式設定メソッドでは、他の型も通常使用できますが、setFormatCode
  86. //FORMAT_NUMBERの場合、実際のエフェクトは「0」には設定されません。
  87. が必要です
  88. //PHPExcel_Writer_Excel5_Format クラスのソース コードの getXf($style) メソッドを変更します、
  89. // if ($this->_BIFF_version == 0x0500) { の前に
  90. を 1 つ追加します (行 363 付近)
  91. //コード行:
  92. //if($ifmt === '0') $ifmt = 1; //
  93. //特定の大きな数値を避けるために、形式を PHPExcel_Style_NumberFormat::FORMAT_NUMBER に設定します
  94. //科学的記数法を使用して表示され、以下の setAutoSize メソッドを使用して、各行の内容を作成できます
  95. //すべてオリジナルの内容に従って表示されます。
  96. $objStyleA5
  97. ->getNumberFormat()
  98. ->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_NUMBER);   
  99. //设置字体
  100. $objFontA5 = $objStyleA5->getFont();   
  101. $objFontA5->setName('Courier New');   
  102. $objFontA5->setSize(10);   
  103. $objFontA5->setBold(true);   
  104. $objFontA5->setUnderline(PHPExcel_Style_Font::UNDERLINE_SINGLE);   
  105. $objFontA5->getColor()->setARGB('FF999999');   
  106. //設置对齐方式
  107. $objAlignA5 = $objStyleA5->getAlignment();   
  108. $objAlignA5->sethorizo​​ntal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);   
  109. $objAlignA5->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);   
  110. //设置边框
  111. $objBorderA5 = $objStyleA5->getBorders();   
  112. $objBorderA5->getTop()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);   
  113. $objBorderA5->getTop()->getColor()->setARGB('FFFF0000'); // カラー
  114. $objBorderA5->getBottom()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);   
  115. $objBorderA5->getLeft()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);   
  116. $objBorderA5->getRight()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);   
  117. //設置充颜色
  118. $objFillA5 = $objStyleA5->getFill();   
  119. $objFillA5->setFillType(PHPExcel_Style_Fill::FILL_SOLID);   
  120. $objFillA5->getStartColor()->setARGB('FFEEEEEE');   
  121. //指定された单元格复制样式情報。
  122. $objActSheet->duplicateStyle($objStyleA5, 'B1:C22');   
  123. //*************************************
  124. //追加写真
  125. $objDrawing = new PHPExcel_Worksheet_Drawing();   
  126. $objDrawing->setName('ZealImg');   
  127. $objDrawing->setDescription('Zeal によって挿入された画像');   
  128. $objDrawing->setPath('./zeali.net.logo.gif');   
  129. $objDrawing->setHeight(36);   
  130. $objDrawing->set座標('C23');
  131. $objDrawing
  132. ->setOffsetX(10); $objDrawing
  133. ->setRotation(15);
  134. $objDrawing->getShadow()->setVisible(true);
  135. $objDrawing
  136. ->getShadow()->setDirection(36); $objDrawing
  137. ->setWorksheet(
  138. $objActSheet);
  139. //新しいワークシートを追加します
  140. $objExcel->createSheet();
  141. $objExcel
  142. ->getSheet(1)->setTitle('テスト 2'
  143. );
  144. //細胞を守る
  145. $objExcel->getSheet(1)->getProtection()->setSheet(true); $objExcel->getSheet(1)->protectCells(
  146. 'A1:C22'
  147. , 'PHPExcel'
  148. );
  149. //************************************
  150. //出力コンテンツ //
  151. $outputFileName
  152. = "output.xls"
  153. ;
  154. //ファイルへ
  155. ////$objWriter->save($outputFileName);
  156. //または //ブラウザに移動
  157. ////header("Content-Type: application/force-download");
  158. ////header("Content-Type: application/octet-stream");
  159. ////header("Content-Type: application/download"); ////header('Content-Disposition:inline;filename="'.$outputFileName.'"');
  160. ////header("コンテンツ転送エンコーディング: バイナリ");
  161. ////header("有効期限: 1997 年 7 月 26 日月曜日 05:00:00 GMT"); ////header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
  162. ////header("キャッシュ制御: 再検証が必要、事後チェック=0、事前チェック=0");
  163. ////header("プラグマ: キャッシュなし"); ////$objWriter->save('php://output');
  164. ?>
  165. from:zeroplace.cn
  166. http://www.bkjia.com/PHPjc/478626.htmlwww.bkjia.comtru​​e
  167. http://www.bkjia.com/PHPjc/478626.html技術記事 ? //PHPExcel クラス ライブラリの includepath を設定します set_include_path( . .PATH_SEPARATOR. D:ZealPHP_LIBS .PATH_SEPARATOR. get_include_path()) /** www.2cto.com *以下は使用例です
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。