ホームページ >バックエンド開発 >PHPチュートリアル >phpexcel でよく使われるメソッドは何ですか? phpexcel の使用例

phpexcel でよく使われるメソッドは何ですか? phpexcel の使用例

WBOY
WBOYオリジナル
2016-07-25 08:51:38963ブラウズ
  1. < p><?
  2. // phpexcel class classlibrary
  3. set_include_path( '。'。 '。path_separator。 ;/ p>
  4. /**

  5. * 以下は使用例です。//// で始まる行にはさまざまなオプションのメソッドがあります。実際の必要に応じてください。
  6. * 該当する行のコメントをオンにします。
  7. ※ Excel5を使用する場合、出力内容はGBKエンコードされている必要があります。
  8. */
  9. require_once 'PHPExcel.php';

  10. // コメント解除

  11. ////require_once 'PHPExcel/Writer/Excel5 .php '; // 他の下位バージョンの xls に使用されます
  12. // または
  13. ////require_once 'PHPExcel/Writer/Excel2007.php' // Excel-2007 形式に使用されます

  14. // 処理オブジェクトインスタンス作成

  15. $objExcel = new PHPExcel();

  16. // ファイル形式書き込みオブジェクトインスタンス作成、コメント解除

  17. ////$objWriter = new PHPExcel_Writer_Excel5($objExcel ); // 他のバージョンの形式の場合
  18. // or
  19. ////$objWriter = new PHPExcel_Writer_Excel2007($objExcel) // 2007 形式の場合
  20. //$objWriter->setOffice2003Compatibility(true);

  21. //******************************************

  22. //基本設定ドキュメントのプロパティ
  23. $objProps = $objExcel->getProperties();
  24. $objProps->setCreator("Zeal Li");
  25. $objProps->setLastModifiedBy("Zeal Li");
  26. $objProps ->setTitle( "Office XLS テスト ドキュメント");
  27. $objProps->setSubject("Office XLS テスト ドキュメント、デモ");
  28. $objProps->setDescription("テスト ドキュメント、PHPExcel によって生成されました。");
  29. $objProps-> ;setKeywords("office Excel PHPExcel");
  30. $objProps->setCategory("Test");

  31. //********** ****** *************************

  32. //後続のコンテンツ操作のために現在のシート インデックスを設定します。
  33. //通常、表示呼び出しは複数のシートを使用する場合にのみ必要です。
  34. //デフォルトでは、PHPExcel は SheetIndex=0 で最初のシートを自動的に作成します
  35. $objExcel->setActiveSheetIndex(0);

  36. $objActSheet = $objExcel->

  37. //現在アクティブなシートの名前を設定します

  38. $objActSheet->setTitle('Test Sheet');

  39. //** ** ************************************

  40. //セルの内容を設定
  41. //
  42. //PHPExcel によって自動的に受信コンテンツに基づいてセルのコンテンツ タイプを決定します
  43. $objActSheet->setCellValue('A1', 'String content') // String content
  44. $objActSheet->setCellValue('A2', 26); value
  45. $objActSheet->setCellValue('A3', true); // ブール値
  46. $objActSheet->setCellValue('A4', '=SUM(A2:A2)'); // 式
  47. //コンテンツタイプを明示的に指定します

  48. $objActSheet->setCellValueExplicit('A5', '847475847857487584',
  49. PHPExcel_Cell_DataType::TYPE_STRING);

  50. //セルを結合

  51. $objActSheet->mergeCells('B1:C22');

  52. //セルを切り離す

  53. $objActSheet->unmergeCells('B1:C22');
  54. < ;p>//******************************************
  55. //設定 セルのスタイル
  56. //

  57. //幅を設定

  58. $objActSheet->getColumnDimension('B')->setAutoSize(true);
  59. $objActSheet->getColumnDimension('A ')->setWidth(30);

  60. $objStyleA5 = $objActSheet->getStyle('A5');

  61. //セルを設定しますコンテンツのデジタル形式。

  62. //
  63. //PHPExcel_Writer_Excel5 を使用してコンテンツを生成する場合、
  64. //ここで注意すべき点は、
  65. //PHPExcel_Style_NumberFormat クラスの const 変数で定義されるさまざまなカスタム書式設定メソッドでは、他の型も通常どおり使用できますが、 setFormatCode
  66. // が FORMAT_NUMBER の場合、実際の効果はフォーマットが "0" に設定されないことです。
  67. //PHPExcel_Writer_Excel5_Format クラスのソース コードの getXf($style) メソッドを変更する必要があります。
  68. // if ($this->_BIFF_version == 0x0500) { の前に
  69. // コード行を追加します (行 363 付近) :
  70. //if($ifmt === '0') $ifmt = 1;
  71. //
  72. //特定の大きな数値が科学表記法を使用して表示されるのを避けるために、形式を PHPExcel_Style_NumberFormat::FORMAT_NUMBER に設定します
  73. //以下の setAutoSize メソッドは、各行の内容
  74. // を元の内容に従って表示させることができます。
  75. $objStyleA5
  76. ->getNumberFormat()
  77. ->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_NUMBER);

  78. //设置文字体

  79. $objFontA5 = $objStyleA5->getFont();
  80. $objFontA5->setName('Courier New');
  81. $objFontA5->setSize(10);
  82. $objFontA5->setBold(true);
  83. $objFontA5->setUnderline(PHPExcel_Style_Font::UNDERLINE_SINGLE);
  84. $objFontA5->getColor()->setARGB('FF999999');

  85. //設置对齐方式

  86. $objAlignA5 = $objStyleA5->getAlignment();
  87. $objAlignA5- >set水平(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);
  88. $objAlignA5->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);

  89. //设置边框

  90. $objBorderA5-> ;getBorders() ;
  91. $objBorderA5->getTop()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
  92. $objBorderA5->getTop()->getColor()->setARGB('FFFF0000'); // color
  93. $objBorderA5->getBottom()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
  94. $objBorderA5->getLeft()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
  95. $objBorderA5->getRight ()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);

  96. //设置充填颜色

  97. $objFillA5 = $objStyleA5->getFill();
  98. $objFillA5->setFillType(PHPExcel_Style_Fill ::FILL_SOLID);
  99. $objFillA5->getStartColor()->setARGB('FFEEEEEE');

  100. //从指定された单元格复制样式情報.

  101. $objActSheet-> ;duplicateStyle($objStyleA5, 'B1:C22');

  102. //************************* ************

  103. //写真追加
  104. $objDrawing = new PHPExcel_Worksheet_Drawing();
  105. $objDrawing->setName('ZealImg');
  106. $objDrawing->setDescription('画像が挿入されましたby Zeal');
  107. $objDrawing->setPath('./zeali.net.logo.gif');
  108. $objDrawing->setHeight(36);
  109. $objDrawing->setCoowned('C23');
  110. $objDrawing->setOffsetX(10);
  111. $objDrawing->setRotation(15);
  112. $objDrawing->getShadow()->setVisible(true);
  113. $objDrawing->getShadow()-> ;setDirection(36);
  114. $objDrawing->setWorksheet($objActSheet);

  115. // 新しいワークシートを追加

  116. $objExcel->createSheet();
  117. $objExcel-> ;getSheet(1)->setTitle('测试2');

  118. //保护单元格

  119. $objExcel->getSheet(1)->getProtection()-> setSheet(true);
  120. $objExcel->getSheet(1)->protectCells('A1:C22', 'PHPExcel');

  121. //******* *********

  122. //出力内容
  123. //
  124. $outputFileName = "output.xls";
  125. //到文件
  126. ////$objWriter->save($outputFileName);
  127. / /or
  128. //到浏览器
  129. ////header("Content-Type: application/force-download");
  130. ////header("Content-Type: application/octet-stream");
  131. / ///header("Content-Type: application/download");
  132. ////header('Content-Disposition:inline;filename="'.$outputFileName.'"');
  133. ////header( "Content-Transfer-Encoding: バイナリ");
  134. ////header("有効期限: 1997 年 7 月 26 日月曜日 05:00:00 GMT");
  135. ////header("Last-Modified: " . gmdate("D, d M Y H:i:s") 。 " GMT");
  136. ////header("キャッシュ制御: 必須再検証、事後チェック = 0、事前チェック = 0");
  137. ////ヘッダー("プラグマ: キャッシュなし") ;
  138. ////$objWriter->save('php://output');
  139. ?>

复制代码


声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。