PHPプログラムに関する各種メモ書き

PHPでエクセルファイルを扱う

● PhpSpreadsheetのインストール

composer require phpoffice/phpspreadsheet

● PHPExcelのインストール(古いパッケージ)

現在メンテナンスされていません

composer require phpoffice/phpexcel

● エクセルファイルの読み込みとデータ表示

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

$excel_file  = 'myfile.xlsx';

// ファイルの読み込み
$objPHPExcel = PHPExcel_IOFactory::load( './' . $excel_file );
$objPHPExcel->setActiveSheetIndex(0);	// 先頭のシートを選択
$sheet = $objPHPExcel->getActiveSheet();

foreach ($sheet->getRowIterator() as $row) {
	$tmp = array();
	foreach ($row->getCellIterator() as $cell) {
		$tmp[] = $cell->getValue();
	}
	print_r( $tmp );
}

● データの書き出し

$objPHPExcel = new PHPExcel();
$sheet = $objPHPExcel->getActiveSheet();

for ($i=0; $i <= 10 ; $i++) {
	$sheet->setCellValueByColumnAndRow($i, 3, "テスト{$i}");
}
$writer = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
$writer->save('___test.xlsx');
No.1184
04/10 14:23

edit