ThinkPHP5.0参照PHPExcelプラグイン、ページ内のエクスポート・データベースのデータ

プラグPHPExcelの導入の枠組みの下で、ThinkPHP5.0フォルダにファイルを拡張します

 

第二に、一般的な機能:

/ ** 
*データのエクスポートXLS形式の成功に
* @param $ headArr //ヘッダ
* @paramの$データ//クエリデータ
* @param $ファイル名//ダウンロードファイル名
*例:
*データ$デシベル=(「メッセージ') - >ことを特徴とする。(' ID '$ IDS) - > SELECT();
* $ =フィールド配列(
*' A '=>アレイ(' ID ''一意の識別子)、
* 'B' =>アレイ( 'タイトル'、 'テーマ')、
* 'C' =>アレイ( 'PHONENUM'、 '電話')、
* 'D' =>アレイ( 'でaddTime'、 '時間')、
*);
* phpExcel (フィールド$、$データ、DATE( '乃至Ymの-D'));
* /
機能phpExcel(headArr $、$ DATA、$名)
{
//ファイルが導入されている
(EXTEND_PATH 'pHPExcel /クラス/ますrequire_once 。PHPExcel.php') ;
//インスタンス化
$ objPHPExcel =新しいPHPExcel();
$ objWriter =新しいPHPExcel_Writer_Excel5($ objPHPExcel ); // 設定の保存形式のバージョン
のforeach($ ASデータキー$ => $値){
foreachの($ headArr AS = K $> $ V){

//設定列ヘッダー文
であれば( {== 0 $)キー
- > setCellValue($ K、V $);. $ objPHPExcel-> GetActiveSheet関数()」1' [1]
}

//テーブルの内容を追加し
、私は$キー+ 2 = $ // テーブルであります2から出発
$ objPHPExcel-> GetActiveSheet関数() - > setCellValue(K $ I $、$値[$ V [0]]);


/ **
*設定関連テーブル
* /

//場合フォーマットPHPExcel_Style_NumberFormat :: FORMAT_NUMBERいくつかの大きな数字を避けるために
、各行の内容を作成するには、次のsetAutoSizeの方法で//が科学的表記法を使用して表示されているが、
//すべてのオリジナルコンテンツに応じて表示されます
$ objPHPExcel-> GetActiveSheet関数() - >でgetStyle(K $ I $。) - > getNumberFormat() - > setFormatCode(PHPExcel_Style_NumberFormat :: FORMAT_NUMBER);

//適応テキストの長さ、幅、セルセット
$ objPHPExcel-> GetActiveSheet関数を() - > getColumnDimension($ K) - (真の)> setAutoSize;
//水平方向の中央
// $ objPHPExcel-> GetActiveSheet関数() - >でgetStyle($ K $私は。) - >のgetAlignment() - > setHorizo​​ntal(\ PHPExcel_Style_Alignment :: HORIZONTAL_CENTER );
//垂直方向に中央揃え
。// $ objPHPExcel-> GetActiveSheet関数() - >でgetStyle($ K $ I) - >のgetAlignment() - > setVertical(\ PHPExcel_Style_Alignment :: VERTICAL_CENTER);
自動的にラップテキスト//
$ objPHPExcel-> GetActiveSheet関数() - >でgetStyle($ K $ I。) - >のgetAlignment() - > setWrapText(真の);
}
}

//ダウンロードフォーマットのXLSヘッダ情報としてクライアントに送ります
    ヘッダ(「プラグマ:パブリック」)。
ヘッダ( "有効期限:0")。
ヘッダ( "のCache-Control:マスト再検証、ポストチェック= 0、事前チェック= 0")。
ヘッダ( "のContent-Type:アプリケーション/強制ダウンロード");
ヘッダ( "コンテンツタイプ:application / vnd.ms-EXECL")。
ヘッダ(「コンテンツタイプ:アプリケーション/オクテットストリーム」)。
ヘッダ( "のContent-Type:アプリケーション/ダウンロード");;
ヘッダ(「コンテンツディスポジション:添付ファイル;ファイル名=」$ファイル名「.XLS');
ヘッダ(「コンテンツ転送エンコード:バイナリ」)。
$ objWriter->( 'PHP://出力')保存します。
}

第三には、ファイルをダウンロードするには、コントローラ内の関数を呼び出します

 

おすすめ

転載: www.cnblogs.com/dandanyoudu/p/11857890.html