Функција fgetcsv

Функцијата fgetcsv чита ред од датотека и ја разложува на полиња во CSV формат. Како прв параметар функцијата прима покажувач до отворена датотека, како втор - максимална должина на редот, како трет - разделувач на полиња (по стандард запирка), како четврт - симбол ограничувач (по стандард двојни наводници), како петти - симбол за екранирање.

Синтакса

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

Пример

Ајде да ја прочитаме CSV датотеката ред по ред и да го испечатиме содржината:

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

Резултат од извршувањето на кодот за датотека со содржина "a,b,c":

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

Пример

Читање на CSV со одредување на максимална должина на редот и прилагоден разделувач:

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

Резултат од извршувањето на кодот за датотека со содржина "a;b;c":

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

Пример

Читање на CSV со наводници и екранирање:

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

Резултат од извршувањето на кодот за датотека со содржина '"a,b",c,"d\"e"':

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

Погледни исто така

  • функцијата fputcsv,
    која запишува податоци во CSV
  • функцијата fgets,
    која чита ред од датотека