目次

PHPExcel

PHPからエクセルファイルを編集可能にする。PHPで書かれたライブラリ。LGPL。

Microsoft Officeを扱う系のライブラリはよくあるが、PHPの場合はだいたいコレが鉄板なようだ。

できること

読み取り、新規作成、編集可能。万能ではないがそれなりにいろいろできて助かる。

文字色セル色変更・行列挿入・罫線などの基本操作もできるし、関数を使用したセルを結果・式のどちらで取得するか選択できる。 ただしグラフとかスマートアートとかは扱えないため、それらが入ったファイルを開いて再保存すると、消えちゃう点に注意。

また、メモリ使用量は高め。

インストール

composer require phpoffice/phpexcel

依存

使い方サンプル

csvをxlsxに変換

<?php
require_once __DIR__ . '/vendor/autoload.php';

// 読み込みリーダの設定
$csvReader = PHPExcel_IOFactory::createReader('CSV');

$csvReader->setDelimiter(',');  // デリミタを変更可能
$csvReader->setInputEncoding('UTF-8');

// 読み込み
$excel = $csvReader->load('test.csv');

// そのまま書き込み
$xlsxWriter = PHPExcel_IOFactory::createWriter($excel, 'Excel2007');
$xlsxWriter->save('test.xlsx');

読み込みファイルタイプに指定できるのは、

書き込みは、Excel2007, Excel5, CSV, HTML, PDF。