PHPマニュアル/PEARマニュアル | ユーザフォーラムで議論/質問 | マニュアル検索 | ハイライト | ハイライトオフ | ポータル | php spot

Structures_DataGrid_Renderer_XLS | JavaScript入門&応用&リファレンスなら「JavaScriptist」

  

Structures_DataGrid_Renderer_XLS

Structures_DataGrid_Renderer_XLS – Excel スプレッドシート レンダリングドライバ

サポートする操作モード

このドライバは次の操作モードをサポートしています。

このドライバがサポートする操作モード
モード サポートしている?
コンテナのサポート yes
出力バッファリング no
ダイレクトレンダリング 真の意味ではサポートしていません。以下を参照ください。
ストリーミング no
オブジェクトの永続化 no

オプション

このドライバは、以下のオプションを受け付けます。

このドライバのオプション
オプション 説明 デフォルト値
bodyFormat mixed 本体部分のセルの書式 (0 [= "書式指定なし"] あるいは Spreadsheet_Excel_Writer_Format オブジェクト)。 以下の書式についての注意を参照ください。 0
border int データグリッドの外枠の描画方法。0 => 描画しない、1 => 細い線、2 => 太い線 (未実装) 0
buildFooter bool フッタを作成するかどうか。 true
buildHeader bool ヘッダを作成するかどうか。 true
defaultCellValue string 空のセルに表示するデフォルトの値。 null
defaultColumnValues array カラムごとに指定するセルのデフォルト値。 array(fieldName => value, ...) 形式の配列となります。 array()
encoding string 内容のエンコーディング。mbstring 拡張モジュールが使用可能な場合、 デフォルト値は mb_internal_encoding() から取得します。 それ以外の場合のデフォルト値は ISO-8859-1 となります。 'ISO-8859-1'
excludeVars array 作成される HTTP クエリから取り除く変数。 array()
extraVars array 作成される HTTP クエリに追加される変数。 array()
filename string スプレッドシートのファイル名。 'spreadsheet.xls'
fillWithEmptyRows bool すべてのページで行数が同じになるようにするかどうか。 false
headerBorder int 見出しと本体の間の区切りの描画方法。0 => 描画しない、1 => 細い線、2 => 太い線 (未実装) 0
headerFormat mixed 見出し部分のセルの書式 (0 [= "書式指定なし"] あるいは Spreadsheet_Excel_Writer_Format オブジェクト)。 以下の書式についての注意を参照ください。 0
hideColumnLinks array デフォルトでは、すべてのカラムで並べ替えリンクが有効になります。 このオプションを使用すると、指定したカラムの並べ替えリンクを無効にできます。 array(fieldName, ...) 形式の配列で指定します。 このオプションは、並べ替えをサポートしているドライバでのみ有効です。 array()
numberAlign bool 数値を右詰めにするかどうか。 true
sendToBrowser bool スプレッドシートをブラウザに送信するかどうか (true = ブラウザに送信する、false = ファイルに書き込む)。 true
startCol int ワークシート内で表示を開始するカラム番号。 0
startRow int ワークシート内で表示を開始する行番号。 0
tempDir string Spreadsheet_Excel_Writer が使用する一時ディレクトリ ("全般的な注意" を参照ください)。 null
version int このレンダラにワークシートオブジェクトを渡さない場合は、 このオプションで BIFF のバージョンを指定することができます。 Spreadsheet_Excel_Writer が受け付ける値は 8 (BIFF8 フォーマットを意味します) だけです。 他の値を指定すると、古い形式のフォーマットとなります (ファイルが壊れているなどのエラーが Excel で発生する場合はこれを使用します)。 8
worksheet object オプションで指定する、Spreadsheet_Excel_Writer_Worksheet オブジェクトへの参照。 null のままにしておくこともできますが、 複数のシートからなるワークブックの特定のシートに表示したい場合に指定します。 null

全般的な注意

このドライバは flatten() メソッドをサポートしていません。 出力内容を DataGrid::getOutput() で取得することはできません。 出力内容は、ブラウザに直接送るほかにファイルに保存することができます。 オプション "sendToBrowser" および "filename" を参照ください。

このドライバはコンテナをサポートしています。Structures_DataGrid::fill() を使用することができます。この方法を推奨します。

PHP の safe_mode が有効になっていると、Spreadsheet_Excel_Writer が Excel ファイルの作成に失敗することがあります。 この問題を回避するには、オプション 'tempDir' の値を PHP から書き込み可能な (一時) ディレクトリに設定します。

書式についての注意

書式設定は、オプション 'headerFormat' および 'bodyFormat'、 あるいは setBodyFormat() および setHeaderFormat() で行います。

しかし、Spreadsheet_Excel_Writer マニュアルの以下の説明には注意しましょう。 "書式を直接 new で作成することはできません。書式を作成するには、 ワークブックの addFormat() メソッドを使用する必要があります。 このメソッドは、ワークブックに書式を関連付けます (関連づけた書式を別のワークブックで使用することはできません)。"

どういう意味かというと、つまり、もしこのドライバに書式を設定したいのなら、 Format オブジェクトをドライバで使用するワークブックから作成しなければなりません。

一番簡単な方法は次のようになります。

// ワークブックを作成します
$workbook = new Spreadsheet_Excel_Writer();

// スプレッドシートをブラウザに送信するように指定します
$workbook->send('test.xls');

// 書式を作成します
$format_bold =& $workbook->addFormat();
$format_bold->setBold();

// ワークブックに内容を投入します。オプションとして書式を渡します
$options = array('headerFormat' => &$format_bold);
$datagrid->fill($workbook, $options);

忘却曲線を使ってこの知識を確実に記憶に残す

フォーラムで「Structures_DataGrid_Renderer_XLS」について話す
各種マニュアル: PHPマニュアル | PEARマニュアル | Smarty(英語)マニュアル | PHP-GTKマニュアル | Structures_DataGrid_Renderer_XLS」をGoogle検索
copyright © 1997-2024 PHP ドキュメント作成グループ(ライセンス). provided by php spot. マニュアル: