PHPでExcelファイル操作のまとめ(途中)
詳細書くのは問題あるので趣味部分のみ。
PHPExcel
- 2007形式に対応している
- 読み込みはExcel2007(.xlsx)形式のみ(っぽい)
- 書き出しはExcel5(.xls), Excel2007両方出来る
Spreadsheet_Excel_Reader
- Excel5形式からデータを読み込める。2007形式は調べていないので不明。
導入に当たって
Warning: require_once(Spreadsheet/Excel/Reader/OLERead.php)
Google先生で散々引いたけど良く解らない。というか、スペイン語のサイトしか出てこない。読めるかー!*1PEARのSpreadsheet/Excel/Readerの位置なんだけど、そもそもそんなパッケージは無いぞ。同梱のoleread.incをSpreadsheet/Excel/Reader/OLERead.phpとして置いてやれば動くけれども。
配布しているサイトにも
Starting before version 2i, the oleread.inc file is included with the PHP ExcelReader distribution, so it is no longer necessary to have the OLE package available.
http://sourceforge.net/docman/display_doc.php?docid=22092&group_id=99160
と書いてあるから、動くこと自体は不思議じゃないが、こんな胡散臭い方法が正しいとは思えない。。。Webでうろうろしていても、簡単だった!、このサイト*2の通りでできた!、とはあるけど、エラーが出たとは書いてない。なぜだろう。英語の解釈がどこかで間違ってるのだろう、そうだろう。・・・
使い方自体は簡単で、
"); $xls = new Spreadsheet_Excel_Reader(); $xls->>setUTFEncoder('mb'); $xls->setOutputEncoding('SJIS'); $xls->read("test.xls"); $sheet = 0; //シートの1枚目は0から。 $cols = 1; //セルの1つ目は1から。 $rows = 1; print($xls->sheets[$sheet]["cells"][$cols][$rows]); print("