ホームページ php教程 php手册 PHPExcel関連の操作

PHPExcel関連の操作

Oct 19, 2016 am 10:19 AM

以下にいくつかの使用方法をまとめます
include 'PHPExcel.php';
include 'PHPExcel/Writer/Excel2007.php';
//または .xls を出力するための include 'PHPExcel/Writer/Excel5.php'; Excel
$objPHPExcel = new PHPExcel();
Excel を 2007 形式で保存します
$objWriter = new PHPExcel_Writer_Excel2007($objPHPExcel);
//または $objWriter = new PHPExcel_Writer_Excel5($objPHPExcel); 2007 以外の形式
$objWriter -> ;save("xxx.xlsx");
ブラウザに直接出力
$objWriter = new PHPExcel_Writer_Excel5($objPHPExcel);
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-execl");
header("Content-Type:application/octet-stream");
header("Content-Type:application/download");;
header('Content-Disposition:attachment; filename= "resume.xls"');
header("Content-Transfer-Encoding:binary");
$objWriter->save('php://output');
———————— —— ———————————————————————————–
Excel のプロパティを設定します:
作成者:
$objPHPExcel->getProperties()- >setCreator ("Maarten Balliauw");
最終更新者
$objPHPExcel->getProperties()->setLastModifiedBy("Maarten Balliauw");
タイトル
$objPHPExcel->getProperties()->setTitle( "Office 2007 XLSX テスト ドキュメント");
タイトル
$objPHPExcel->getProperties()->setSubject("Office 2007 XLSX テスト ドキュメント");
説明
$objPHPExcel->getProperties()->setDescription( "テスト ドキュメントOffice 2007 XLSX 用。PHP クラスを使用して生成されます。");
キーワード
$objPHPExcel->getProperties()->setKeywords("office 2007 openxml php");
タイプ
$objPHPExcel->getProperties ()-> ;setCategory("テスト結果ファイル");
——————————————————————————————— ————–
現在のシート
$objPHPExcel->setActiveSheetIndex(0);
シートの名前を設定
$objPHPExcel->getActiveSheet()->setTitle('Simple');
セルの値を設定
$objPHPExcel- >getActiveSheet()->setCellValue('A1', 'String');
$objPHPExcel->getActiveSheet()->setCellValue('A2', 12);
$objPHPExcel-> >setCellValue('A3', true);
$objPHPExcel->getActiveSheet()->setCellValue('C5', '=SUM(C2:C4)');
$objPHPExcel-> >setCellValue('B8', '=MIN(B2:C5)');
セルを結合
$objPHPExcel->getActiveSheet()->mergeCells('A18:E22');
セルを切り離す
$objPHPExcel- >getActiveSheet()->unmergeCells('A28:B28');

保护セル
$objPHPExcel->getActiveSheet()->getProtection()->setSheet(true); // ワークシート保護を有効にするには、true に設定する必要があります!
$objPHPExcel->getActiveSheet()->protectCells('A3:E13', 'PHPExcel');
设置格式
// セル番号を設定します形式
echo date('H:i:s') 。 " セル番号の形式を設定しますn";
$objPHPExcel->getActiveSheet()->getStyle('E4')->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_CURRENCY_EUR_SIMPLE);
$objPHPExcel->getActiveSheet()->duplicateStyle( $objPHPExcel ->getActiveSheet()->getStyle('E4'), 'E5:E13' );
設定宽width
// 列幅を設定します
$objPHPExcel->getActiveSheet()->getColumnDimension('B' )->setAutoSize(true);
$objPHPExcel->getActiveSheet()->getColumnDimension('D')->setWidth(12);
設置フォント
$objPHPExcel->getActiveSheet()-> getStyle('B1')->getFont()->setName('Candara');
$objPHPExcel->getActiveSheet()->getStyle('B1')->getFont()->setSize (20);
$objPHPExcel->getActiveSheet()->getStyle('B1')->getFont()->setBold(true);
$objPHPExcel->getActiveSheet()->getStyle( 'B1')->getFont()->setUnderline(PHPExcel_Style_Font::UNDERLINE_SINGLE);
$objPHPExcel->getActiveSheet()->getStyle('B1')->getFont()->getColor()->setARGB(PHPExcel_Style_Color::COLOR_WHITE);
$objPHPExcel->getActiveSheet()->getStyle('E1')->getFont()->getColor()->setARGB(PHPExcel_Style_Color::COLOR_WHITE);
$objPHPExcel->getActiveSheet()- >getStyle('D13')->getFont()->setBold(true);
$objPHPExcel->getActiveSheet()->getStyle('E13')->getFont()->setBold (true);
配置整列
$objPHPExcel->getActiveSheet()->getStyle('D11')->getAlignment()->sethorizo​​ntal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);
$objPHPExcel->getActiveSheet()->getStyle('D12')->getAlignment()->sethorizo​​ntal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);
$objPHPExcel->getActiveSheet()->getStyle('D13')->getAlignment()->sethorizo​​ntal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);
$objPHPExcel->getActiveSheet()->getStyle('A18')->getAlignment()->sethorizo​​ntal(PHPExcel_Style_Alignment::HORIZONTAL_JUSTIFY);
//垂直居中
$objPHPExcel->getActiveSheet()->getStyle('A18')->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
配置列の境界線
$objPHPExcel->getActiveSheet()->getStyle('A4')->getBorders()->getTop()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
$objPHPExcel->getActiveSheet()->getStyle('B4')->getBorders()->getTop()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
$objPHPExcel->getActiveSheet()->getStyle('C4')->getBorders()->getTop()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
$objPHPExcel->getActiveSheet()->getStyle('D4')->getBorders()->getTop()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
$objPHPExcel->getActiveSheet()->getStyle('E4')->getBorders()->getTop()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
境界線の色を設定します
$objPHPExcel-> ;getActiveSheet()->getStyle('D13')->getBorders()->getLeft()->getColor()->setARGB('FF993300');
$objPHPExcel->getActiveSheet() ->getStyle('D13')->getBorders()->getTop()->getColor()->setARGB('FF993300');
$objPHPExcel->getActiveSheet()->getStyle ('D13')->getBorders()->getBottom()->getColor()->setARGB('FF993300');
$objPHPExcel->getActiveSheet()->getStyle('E13' )->getBorders()->getTop()->getColor()->setARGB('FF993300');
$objPHPExcel->getActiveSheet()->getStyle('E13')-> getBorders()->getBottom()->getColor()->setARGB('FF993300');
$objPHPExcel->getActiveSheet()->getStyle('E13')->getBorders()- >getRight()->getColor()->setARGB('FF993300');
設定充填颜色
$objPHPExcel->getActiveSheet()->getStyle('A1')->getFill()- >setFillType(PHPExcel_Style_Fill::FILL_SOLID);
$objPHPExcel->getActiveSheet()->getStyle('A1')->getFill()->getStartColor()->setARGB('FF808080');
$objPHPExcel->getActiveSheet()->getStyle('B1')->getFill()->setFillType(PHPExcel_Style_Fill::FILL_SOLID);
$objPHPExcel->getActiveSheet()->getStyle('B1')->getFill()->getStartColor()->setARGB('FF808080');
画像を追加します
$objDrawing = new PHPExcel_Worksheet_Drawing() ;
$objDrawing->setName('ロゴ');
$objDrawing->setDescription('ロゴ');
$objDrawing->setPath('./images/officelogo.jpg');
$objDrawing- >setHeight(36);
$objDrawing->setWorksheet($objPHPExcel->getActiveSheet());
$objDrawing = new PHPExcel_Worksheet_Drawing();
$objDrawing->setName('Paid');
$objDrawing ->setDescription('Paid');
$objDrawing->setPath('./images/paid.png');
$objDrawing->setCoowned('B15');
$objDrawing->setOffsetX( 110);
$objDrawing->setRotation(25);
$objDrawing->getShadow()->setVisible(true);
$objDrawing->getShadow()->setDirection(45);
$ objDrawing->setWorksheet($objPHPExcel->getActiveSheet());
//中国語出力の問題の処理
通常の出力では、文字列を UTF-8 エンコーディングに変換する必要があります。変換しないと、次のように中国語の文字が空白として出力されます。 :
$str = iconv('gb2312', 'utf-8', $str);
または、中国語の文字列を特別に処理する関数を作成することもできます:
function ConvertUTF8($str)
{
if(empty($str) ) ) return '';
return iconv('gb2312', 'utf-8', $str);
}
//データベースから出力されたデータを処理する方法
次のようなデータベースからデータを読み取ります:
$db = new Mysql($ dbconfig);
$sql = "SELECT * FROM テーブル名";
$row = $db->GetAll($sql); // $row は 2 次元配列です
$count = count( $row);
for ($i = 2; $i $objPHPExcel->getActiveSheet()->setCellValue('A' . $i, ConvertUTF8($ row[$i-2 ][1]));
$objPHPExcel->getActiveSheet()->setCellValue('B' . $i, ConvertUTF8($row[$i-2][2]));
$objPHPExcel->getActiveSheet()->setCellValue('C' . $i, ConvertUTF8($row[$i-2][3]));
$objPHPExcel->getActiveSheet()->setCellValue ('D' . $ i, ConvertUTF8($row[$i-2][4]));
$objPHPExcel->getActiveSheet()->setCellValue('E' . $i, ConvertUTF8(date(" Y-m-d", $row[ $i-2][5])));
$objPHPExcel->getActiveSheet()->setCellValue('F' . $i, ConvertUTF8($row[$i-2][ 6]));
$objPHPExcel->getActiveSheet()->setCellValue('G' . $i, ConvertUTF8($row[$i-2][7]));
$objPHPExcel->getActiveSheet( )->setCellValue( 'H' . $i, ConvertUTF8($row[$i-2][8]));
}

デフォルトシートの後に、ワークシートを作成します
echo date('H:i: s') . " 新しいワークシート オブジェクトを作成しますn";
$objPHPExcel->createSheet();
$objWriter = PHPExcel_IOFactory::createWriter($objExcel, 'Excel5');
$objWriter-save('php://output ');

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

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)