0

次のコードは、csv ファイルからデータの列全体を取得するために使用しているものです。(多くの列がありますが、#2 だけが必要です)。このコードは、すべてのデータを という配列に入れます$cbsmin。私がする必要があるのは、実際にはデータではなくカテゴリ名であるため、各ファイルの最初のデータをスキップすることです。

これはどのように行うのが最善でしょうか?

for($i=0;$i<count($files);$i++){
    if (($handle = fopen($files[$i], "r")) !== FALSE) {
        while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {

            $cbsmin[] = $data[2];

        }
        fclose($handle);
    }
}
4

3 に答える 3

2

それが最初の行であるかどうかを示す単純なフラグを使用するだけです。そうである場合は、フラグを false にリセットし、その行をスキップします。

$isfirst = true;
while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
    if ($isfirst)
    {
        $isfirst = false;
        continue;
    }
    $cbsmin[] = $data[2];
}
于 2013-05-27T21:27:52.480 に答える
2

1つ実行するだけ

   fgetcsv($handle, 1000, ",");

while ループの前。

于 2013-05-27T21:30:32.847 に答える