- 1~2行目がCSV
- 3行目以降がただのテキスト
のような不規則なCSVを手っ取り早く処理する方法。
data.csv
foo,bar,baz
foo,bar,baz
comment1
comment2
comment3
php.php
<?php
$csv = new SplFileObject('data.csv');
$line1 = $csv->fgetcsv();
$line2 = $csv->fgetcsv();
$line3 = $csv->fgets();
$line4 = $csv->fgets();
$line5 = $csv->fgets();
var_dump($line1, $line2, $line3, $line4, $line5);
上記のように書くと
- 1~2行目は配列になる。
- 3~5行目は文字列になる。
output
array(3) {
[0] =>
string(3) "foo"
[1] =>
string(3) "bar"
[2] =>
string(3) "baz"
}
array(3) {
[0] =>
string(3) "foo"
[1] =>
string(3) "bar"
[2] =>
string(3) "baz"
}
string(9) "comment1\n"
string(9) "comment2\n"
string(9) "comment3\n"