EXCEL は、VBA やマクロで操作することもできますが、PHP から操作できると、いろいろ捗ることもあるかなぁと思うので、今回は、PHP から EXCEL を操作してみたいと思います。
今回は、PhpSpreadsheet というライブラリを使ってみます。
★PhpSpreadsheet のサイト
https://phpspreadsheet.readthedocs.io/en/latest/
1.実際に使ってみる
以下は、すべて同じフォルダで操作してください。
composer を使って、ライブラリをインストールします。
※ composer が入ってない場合は、https://getcomposer.org/ からダウンロードしてください。
# composer require phpoffice/phpspreadsheet
上記コマンドを実行すると、実行したフォルダに `vendor` というフォルダが作成されると思います。その中にライブラリが読み込まれます。また、Composer によって、クラスの自動ロードをしてくれるコードもインストールされます。
PhpSpreadsheet のサイトにある、サンプルコードを適当なファイル名で保存て実行します。
require 'vendor/autoload.php';
use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;
$spreadsheet = new Spreadsheet();
$sheet = $spreadsheet->getActiveSheet();
$sheet->setCellValue('A1', 'Hello World !');
$writer = new Xlsx($spreadsheet);
$writer->save('hello world.xlsx');
実行すると、`hello world.xlsx` というファイルが作成さていて、A1 セルに、`Hello World!` が入力されています。
これを参考に、MySQL のテーブルの内容から、定期的に EXCEL を出力したりすることもできます。
とても簡単でした。