Az fgetcsv függvény

Az fgetcsv függvény egy sort olvas be egy fájlból és mezőkre bontja CSV formátumban. Az első paraméterként a függvény egy fájlmutatót fogad el, a második - a sor maximális hosszát, a harmadik - a mezőelválasztót (alapértelmezetten vessző), a negyedik - a határoló karaktert (alapértelmezetten dupla idézőjelek), az ötödik - az escape karaktert.

Szintaxis

phpfgetcsv(
  resource $handle,
  int $length = 0,
  string $separator = ",",
  string $enclosure = "\"",
  string $escape = "\"
);

Példa

Olvassunk be egy CSV fájlt soronként és jelenítsük meg a tartalmát:

php<?php
  $file = fopen('data.csv', 'r');
  while (($row = fgetcsv($file)) !== false) {
    print_r($row);
  }
  fclose($file);
?>

A kód végrehajtásának eredménye "a,b,c" tartalmú fájl esetén:

php['a', 'b', 'c']

Példa

CSV olvasása a sor maximális hosszának és egyéni elválasztó megadásával:

php<?php
  $file = fopen('data.csv', 'r');
  while (($row = fgetcsv($file, 1000, ';')) !== false) {
    print_r($row);
  }
  fclose($file);
?>

A kód végrehajtásának eredménye "a;b;c" tartalmú fájl esetén:

php['a', 'b', 'c']

Példa

CSV olvasása idézőjelekkel és escape-eléssel:

php<?php
  $file = fopen('data.csv', 'r');
  while (($row = fgetcsv($file, 0, ',', '"', '\')) !== false) {
    print_r($row);
  }
  fclose($file);
?>

A kód végrehajtásának eredménye '"a,b",c,"d\"e"' tartalmú fájl esetén:

php['a,b', 'c', 'd"e']

Lásd még

  • a(z) fputcsv függvényt,
    amely adatokat ír CSV-be
  • a(z) fgets függvényt,
    amely egy sort olvas be egy fájlból