Działa podobnie do fgets() tylko, że fgetcsv() przetwarza odczytaną linię na pola w formacie CSV i zwraca tablicę zawierającą odczytane pola.
Parametry
- $uchwyt
-
Ważny uchwyt pliku, poprawnie otwartego za pomocą fopen(), popen() lub fsockopen().
- $długość
-
Musi być większy niż najdłuższa linia (w znakach), która znajduje się w pliku CSV (wliczając znaki końca lini). Stał się opcjonalny w PHP 5. Opuszczenie tego parametru (lub ustawienie go na 0 w PHP 5.0.4 lub późniejszym) spowoduje, że maksymalna długość lini nie jest limitowana, co jest nieznacznie wolniejsze.
- $delimiter
-
Ustawia delimeter (tylko jeden znak) pól. Domyślnie przecinek.
- $ogranicznik
-
Ustawia znak ograniczający pole. Domyślnie jest to cudzysłów. Dodano w PHP 4.3.0.
- $ucieczka
-
Ustawia znak ucieczki (tylko jeden znak). Domyślnie jest to odwrotny ukośnik (\)
Zwracane wartości
Zwraca indeksowaną tablicę zawierającą odczytane pola.
Informacja: Pusta linia w pliku CSV zostanie zwrócona jako tablica składająca się z pojedynczego pola null i nie zostanie potraktowana jako błąd.
Informacja: Jeśli PHP niewłaściwie rozpoznaje znaki końca linii podczas odczytu plików stworzonych lub znajdujących się na komputerach Macintosh, problem może rozwiązać włączenie dyrektywy konfiguracyjnej auto_detect_line_endings .
fgetcsv() zwraca FALSE w przypadku błędu, włączając w to koniec pliku.
Kompatybilność: PHP4, PHP5.
Listing
$row = 1;
$uchwyt = fopen ("test.csv","r");
while (($data = fgetcsv($uchwyt, 1000, ",")) !== FALSE) {
$num = count($data);
echo "<p> $num pól w lini $row: <br /></p>\n";
$row++;
for ($c=0; $c < $num; $c++) {
echo $data[$c] . "<br />\n";
}
}
fclose ($uchwyt);
?>
Ranga: Administrator serwisu Punktów: 0