2008/07/05(土)
PHPでExcel出力、PHPExcel
ビジネスでの使用は切っても切り離せない表計算ソフト。そのデファクトスタンダードとなっているExcel。Excelをデータベース代わりに使っている人も。
クライアントPC側で色々と設定や手順が必要ですが、サーバ上データベースのデータをただ取り出すだけであればODBCを利用すれば実現できるということもあり、Excelへのデータ出力にはあまり関心がありませんでした。
今回はデータをただ取り出すのではなく、データベース上にあるデータをPHPで処理、さらに罫線や書式が設定されたExcelのシート自体を作成し出力してしまおうというもの。PHPExcelでこれらが実現出来るということで早速実験。(ちなみにJava系のJSPであればjakarta POI等で同じことが実現可能だそう。Windows環境下でPHPを動かす場合にはPHPExcelをつかわずCOMを利用して実現する方法もあるようです。)
今の所PHPExcelの最新バージョンは6月23日公開の1.6.2でOffice Open XMLであるExcel 2007形式のxlsxの出力にも対応。
ただし、早速注意点あり。Excel2007のxlsx形式で出力する為にはZIP関数が利用できる環境が必要なようで、Linux環境下でPHPをyumコマンドでインストールしたのでは--enable-zipオプションが有効になっておらずうまく動作しない。xlsxファイル自体がzip圧縮されたファイルだからなのでしょう。
xlsxを出力するのであればPHPのコンパイル時に./configureで--enable-zipオプションつきでインストールする必要があるよう。もちろんExcel5(Excel97~Excel2003)形式のxlsファイルを扱うのであれば不要ですけど。
後マニュアル、日本語に訳されたものはみつからず、英語ですがまあ、それほど分量のあるマニュアルではないので読むのにはそれほど苦労はしませんが。
又、PHPExcelにはPDFに変換し自動出力させる機能もあるのですが、現バージョンではセルのマージ部分の印刷がうまくできないようです。
掲載画像はExcel5形式で出力したものをOpenOfficeのcalcで表示した画面。もちろんExcelの関数も埋め込みできます。さて、自宅でもOffice 2007を導入すべきかどうか・・・
Blog
CCNA(Cisco Certified Network Associate)取得を目指している取得した取得後有効期限満了したぎりぎり20代30代突入30代30代後半40代突入管理人のブログです。
Recent Entries
- Perfume 「ネビュラロマンス」
- 富士通 Arrows Tab Q507/PEの中古品を買ってみた
- 長井海の手公園 ソレイユの丘
- 型落ち? AMD Ryzen 7 5700XでデスクトップPCをスペックアップ
- 2025年 あけましておめでとうございます。
- たんばらスキーパーク
- 甲斐国一宮 浅間神社
- 桔梗信玄餅 工場テーマパーク
- 秋川渓谷 瀬音の湯
- Maker Faire Tokyo 2024に行ってきた
Google Maps API

地図 ブログ
Category
Monthly Archives
- 2025年04月
- 2025年03月
- 2025年02月
- 2025年01月
- 2024年12月
- 2024年11月
- 2024年10月
- 2024年09月
- 2024年08月
- 2024年07月
- 2024年06月
- 2024年05月
- 2024年04月
- 2024年03月
- 2024年02月
- 2024年01月
- 2023年12月
- 2023年11月
- 2023年10月
- 2023年09月
- 2023年08月
- 2023年07月
- 2023年06月
- 2023年05月
- 2023年03月
- 2023年02月
- 2023年01月
- 2022年11月
- 2022年10月
- 2022年09月
- 2022年08月
- 2022年07月
- 2022年05月
- 2022年04月
- 2022年01月
- 2021年12月
- 2021年11月
- 2021年10月
- 2021年09月
- 2021年08月
- 2021年07月
- 2021年06月
- 2021年05月
- 2021年04月
- 2021年03月
- 2021年02月
- 2021年01月
- 2020年12月
- 2020年10月
- 2020年09月
- 2020年08月
- 2020年07月
- 2020年06月
- 2020年05月
- 2020年04月
- 2020年03月
- 2020年01月
- 2019年12月
- 2019年11月
- 2019年10月
- 2019年09月
- 2019年08月
- 2019年07月
- 2019年06月
- 2019年05月
- 2019年04月
- 2019年03月
- 2019年02月
- 2019年01月
- 2018年12月
- 2018年09月
- 2018年08月
- 2018年06月
- 2018年05月
- 2018年04月
- 2018年03月
- 2018年02月
- 2018年01月
- 2017年12月
- 2017年11月
- 2017年10月
- 2017年09月
- 2017年08月
- 2017年07月
- 2017年06月
- 2017年05月
- 2017年04月
- 2017年03月
- 2017年02月
- 2017年01月
- 2016年12月
- 2016年11月
- 2016年09月
- 2016年08月
- 2016年07月
- 2016年06月
- 2016年05月
- 2016年04月
- 2016年03月
- 2016年02月
- 2016年01月
- 2015年12月
- 2015年11月
- 2015年10月
- 2015年09月
- 2015年08月
- 2015年07月
- 2015年06月
- 2015年05月
- 2015年04月
- 2015年02月
- 2015年01月
- 2014年12月
- 2014年11月
- 2014年10月
- 2014年09月
- 2014年08月
- 2014年07月
- 2014年06月
- 2014年05月
- 2014年04月
- 2014年03月
- 2014年02月
- 2014年01月
- 2013年12月
- 2013年11月
- 2013年10月
- 2013年09月
- 2013年08月
- 2013年07月
- 2013年06月
- 2013年05月
- 2013年04月
- 2013年03月
- 2013年02月
- 2013年01月
- 2012年12月
- 2012年11月
- 2012年10月
- 2012年09月
- 2012年08月
- 2012年07月
- 2012年06月
- 2012年05月
- 2012年04月
- 2012年03月
- 2012年02月
- 2012年01月
- 2011年12月
- 2011年11月
- 2011年10月
- 2011年09月
- 2011年08月
- 2011年07月
- 2011年06月
- 2011年05月
- 2011年04月
- 2011年03月
- 2011年02月
- 2011年01月
- 2010年12月
- 2010年11月
- 2010年10月
- 2010年09月
- 2010年08月
- 2010年07月
- 2010年06月
- 2010年05月
- 2010年04月
- 2010年03月
- 2010年02月
- 2010年01月
- 2009年12月
- 2009年11月
- 2009年10月
- 2009年09月
- 2009年08月
- 2009年07月
- 2009年06月
- 2009年05月
- 2009年04月
- 2009年03月
- 2009年02月
- 2009年01月
- 2008年12月
- 2008年11月
- 2008年10月
- 2008年09月
- 2008年08月
- 2008年07月
- 2008年06月
- 2008年05月
- 2008年04月
- 2008年03月
- 2008年02月
- 2008年01月
- 2007年12月
- 2007年11月
- 2007年10月
- 2007年09月
- 2007年08月
- 2007年07月
- 2007年06月
- 2007年05月
- 2007年04月
- 2007年03月
- 2007年02月
- 2007年01月
- 2006年12月
- 2006年11月
- 2006年10月
- 2006年09月
- 2006年08月
- 2006年07月
- 2006年06月
- 2006年05月
- 2006年04月
- 2006年03月
- 2006年02月
- 2006年01月
- 2005年12月
- 2005年11月
- 2005年10月