Forum und email

fgetcsv

(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.

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

<?php
$row 
1;
$handle fopen("test.csv","r");
while ((
$data fgetcsv($handle1000",")) !== 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 si hanno problemi con il PHP che non riconosce i fine linea leggendo file creati o ospitati su un computer Macintosh, si può abilitare l'opzione auto_detect_line_endings della configurazione di runtime.

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