【PHP】CSVファイルを読み込んで配列化する
CSVを読み込む
例えば、同ディレクトリ内にある「list.csv」を読み込みたいときは以下。
$filer = fopen('./list.csv', 'r');
$books = array();
while ($line = fgetcsv($filer)) {
$books[] = $line;
}
fclose($filer);
CSVの行をそのまま配列にするのではなく、キーなどを設定したい場合は以下。
$filer = fopen('./list.csv', 'r');
while ($line = fgetcsv($filer)) {
$guest = [
"name" => $line[1],
"key" => $line[2],
"from" => $line[3],
"to" => $line[4],
];
$users[$line[0]] = $guest;
}
fclose($filer);
おまけ:CSVに追記する
逆に配列をCSVに追加したい場合は以下。
$new_line = implode(",", $array); //追記する行を生成
$filename = './list.csv';
$fp = fopen($filename, 'a');
fwrite($fp, $new_line . "\n");
fclose($fp);