PHPでCSVファイルを読み込む

PHPでCSVファイルを読むにはファイルポインタとfgetcsvを使います。

使い方

まずは適当なcsvファイルを用意します。

書式もかなり柔軟ですので、ダブルクォートの有無もどちらでもOKです。

A,B,C,D,E
10,20,30,40,50
100,200,300,400,500

こんなデータを用意しました。これをtest.csvとして保存します。

次にphpファイルを作ります。

<?php
	$f = fopen('./test.csv', 'r+');
	while ( ( $line = fgetcsv($f) ) !== FALSE ) {
		print_r($line);
	}
?>

これをtest.phpとして保存します。

2つを同じフォルダに置いてphpから実行すると・・・

Array
(
    [0] => A
    [1] => B
    [2] => C
    [3] => D
    [4] => E
)
Array
(
    [0] => 10
    [1] => 20
    [2] => 30
    [3] => 40
    [4] => 50
)
Array
(
    [0] => 100
    [1] => 200
    [2] => 300
    [3] => 400
    [4] => 500
)

という結果が得られました。

csvを簡単に配列として扱えますね。