Manuale PHP
Indietro |  | Avanti

# fgetcsv

(PHP 3 >= 3.0.8, PHP 4, PHP 5)

fgetcsv -- Prende una riga da un puntatore a file e l'analizza in cerca di campi CSV

## Descrizione

array fgetcsv ( resource handle [, int lunghezza [, string delimitatore [, string enclosure]]] )

handle

  Un puntatore valido a un file che punta a un file aperto con successo da fopen(), popen(), o fsockopen().

length (Opzionale)

  Deve essere più grande della linea più lunga (in caratteri) per essere trovato nel file CSV (permettendo di trascinare il carattere di fine linea). E' diventato opzionale in PHP 5.

delimiter (Opzionale)

  Setta il delimitatore di campo (un solo carattere). Virgola per default.

enclosure (Opzionale)

  Setta il carattere di inclusione nel campo (un solo carattere). Doppie virgolette per default. Aggiunto in PHP 4.3.0.

Simile a fgets() eccetto per il fatto che fgetcsv() analizza le righe lette alla ricerca di campi in formato CSV e restituisce un vettore contenente i campi letti.

> Nota: Il parametro enclosure è stato aggiunto in PHP 4.3.0.

Handle deve essere un puntatore valido ad un file correttamente aperto da fopen(), popen() o fsockopen().

Lunghezza deve essere maggiore della linea più lunga trovata nel file CSV (compresi i caratteri di fine riga).

fgetcsv() restituisce `FALSE` in caso d'errore e al raggiungimento della fine del file.

> Nota: Una riga vuota in un file CVS verrà riportata come un vettore contenente un solo campo vuoto (null) e non verrà trattata come un errore.

Esempio 1. Legge e scrive l'intero contenuto di un file CSV.

`<?php $row = 1; $handle = fopen("test.csv","r"); while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) { $num = count($data); echo "<p> $num campi sulla linea $row: <br /></p>\n"; $row++; for ($c=0; $c < $num; $c++) { echo $data[$c] . "<br>\n"; } } fclose($handle); ?>`

fgetcsv() è diventata binary safe dal PHP 4.3.5

> Nota: Se il PHP ha dei problemi a riconoscere la fine riga nella lettura di file su o creati da computer Macintosh, si può abilitare il parametro di configurazione auto_detect_line_endings.

Vedere anche explode(), file(), pack() e fputcsv().

Indietro | Partenza | Avanti
fgetc | Risali | fgets