書籍転載:PHPライブラリ&サンプル実践活用[厳選100]
ExcelファイルをHTMLとして表示する(php-excel-reader)
Excelファイルを読み込んで、HTMLのテーブルとして出力するライブラリ「php-excel-reader」の基本的な使い方を説明する。書籍転載の18本目(書籍内の番号は「67」)。
書籍転載について
ご注意
本記事は、書籍の内容を改変することなく、そのまま転載したものです。このため用字用語の統一ルールなどはBuild Insiderのそれとは一致しません。あらかじめご了承ください。
php-excel-readerは、Excelファイルを読み込んで、HTMLのテーブルとして出力するライブラリです。手軽なわりに、Excelの見栄えをうまく再現した表示が可能です。
- 名称: php-excel-reader
- URL: https://code.google.com/p/php-excel-reader/
- インストール方法: include_path に配置
- ファイル: excel_reader2.php
インストール方法と基本の使い方
提供サイトからライブラリ本体(執筆時点では、php-excel-reader-2.21.zip)をダウンロードし、解凍後にできるexcel_reader2.phpを利用します。
php-excel-readerの使い方は、リスト67-1のようにシンプルです。
<?php
require_once 'excel_reader2.php';
// 1Excelファイルの読み込み
$data = new Spreadsheet_Excel_Reader("sample.xls");
// 2HTMLの出力
$html = $data->dump(false,false);
// 3文字列の置換も可能
$html = str_replace('$$1$$', '置換された文字列', $html);
?>
<html>
<head>
<style>
table.excel {
border-style:ridge;
border-width:0;
border-collapse:collapse;
font-family:sans-serif;
font-size:12px;
}
table.excel thead th, table.excel tbody th {
background:#CCCCCC;
border-style:ridge;
border-width:1;
text-align: center;
vertical-align:bottom;
}
table.excel tbody th {
text-align:center;
width:20px;
}
table.excel tbody td {
vertical-align:bottom;
}
table.excel tbody td {
padding: 0 3px;
}
</style>
</head>
<body>
<?php echo $html; ?>
</body>
</html>
|
読み込みたいExcelファイル(図67-1)を指定して、Spreadsheet_Excel_Readerオブジェクトを生成し(1)、dumpメソッドで、HTMLを出力するだけです(2)。dumpメソッドの2つの引数は、セルの見出し、セルの罫線を表示するか否かを指定するものです。
dumpメソッドで出力されるものは、HTMLの文字列ですので、元のファイルの文字列を置換することも可能です(3)。
また、出力されるテーブルタグには、excelというクラス名が付加されます。
ここでは図67-2のように、よりExcelらしい表示となるようにスタイルを設定しています。
なお、サンプルのように1つのPHPファイルで表示可能ですが、Twigのようなテンプレートエンジンとともに利用することも可能です。dumpメソッドの出力は単なる文字列ですので、テンプレート変数にセットするだけです。
※以下では、本稿の前後を合わせて5回分(第14回~第18回)のみ表示しています。
連載の全タイトルを参照するには、[この記事の連載 INDEX]を参照してください。
14. markdown形式のテキストをHTMLに変換する(PHP Markdown)
Markdown形式のファイルをHTML形式のコードに変換するためのライブラリ「PHP Markdown」の基本的な使い方を説明する。書籍転載の14本目(書籍内の番号は「38」)。
16. さまざまなグラフを動的に生成する(実行編)(JpGraph)
グラフ作成ライブラリJpGraphを使って、棒グラフ、折れ線グラフ、レーダーチャートを作成する方法を説明する。書籍転載の16本目(書籍内の番号は「25」)。
17. Excelファイルを作成/操作する(PHPExcel)
Excelファイルを作成/操作できるライブラリ「PHPExcel」の基本的な使い方を説明する。書籍転載の17本目(書籍内の番号は「36」)。