Funkcja fgetcsv
Funkcja fgetcsv odczytuje wiersz z pliku i analizuje go na pola w formacie CSV. Pierwszym parametrem funkcja przyjmuje wskaźnik do otwartego pliku, drugim - maksymalną długość wiersza, trzecim - separator pól (domyślnie przecinek), czwartym - znak ogranicznika (domyślnie podwójny cudzysłów), piątym - znak escape.
Składnia
fgetcsv(
resource $handle,
int $length = 0,
string $separator = ",",
string $enclosure = "\"",
string $escape = "\"
);
Przykład
Odczytajmy plik CSV wiersz po wierszu i wyświetlmy zawartość:
<?php
$file = fopen('data.csv', 'r');
while (($row = fgetcsv($file)) !== false) {
print_r($row);
}
fclose($file);
?>
Wynik wykonania kodu dla pliku z zawartością "a,b,c":
['a', 'b', 'c']
Przykład
Odczyt CSV z określeniem maksymalnej długości wiersza i niestandardowego separatora:
<?php
$file = fopen('data.csv', 'r');
while (($row = fgetcsv($file, 1000, ';')) !== false) {
print_r($row);
}
fclose($file);
?>
Wynik wykonania kodu dla pliku z zawartością "a;b;c":
['a', 'b', 'c']
Przykład
Odczyt CSV z cudzysłowami i escape'owaniem:
<?php
$file = fopen('data.csv', 'r');
while (($row = fgetcsv($file, 0, ',', '"', '\')) !== false) {
print_r($row);
}
fclose($file);
?>
Wynik wykonania kodu dla pliku z zawartością '"a,b",c,"d\"e"':
['a,b', 'c', 'd"e']