fgetcsvPrende una riga da un puntatore a file e l'analizza in cerca di campi CSV
&reftitle.description;
arrayfalsefgetcsvresourcestreamintnulllength&null;stringseparator","stringenclosure"\""stringescape"\\"
Simile a fgets eccetto per il fatto che
fgetcsv analizza le riga letta alla ricerca di campi
in formato CSV e restituisce un array contenente i campi
letti.
Le impostazioni locali vengono prese in considerazione da questa funzione.
Ad esempio, i dati codificati in determinati formati a byte singolo potrebbero essere analizzati
in modo errato se LC_CTYPE è impostato su
en_US.UTF-8.
&reftitle.parameters;
stream
Un puntatore valido a un file che punta a un file aperto con successo da
fopen, popen o
fsockopen.
length
Deve essere più grande della riga più lunga (in caratteri) per essere trovato nel
file CSV (tenendo conto dei caratteri di fine riga). Altrimenti, la riga
viene suddivisa in blocchi di length caratteri,
a meno che la divisione non avvenga all'interno di una chiusura.
Se si omette questo parametro (o lo si imposta su 0,
o &null; in PHP 8.0.0 o versioni successive), la lunghezza massima della riga non è limitata,
ma è leggermente più lenta.
separator
Il parametro separator imposta il separatore di campo.
Deve essere un carattere a byte singolo.
enclosure
Il parametro enclosure imposta il carattere di chiusura del campo.
Deve essere un carattere a byte singolo.
escape
Il parametro escape imposta il carattere di escape.
Deve essere un carattere a byte singolo o la stringa vuota.
La stringa vuota ("") disabilita il meccanismo di escape proprietario.
Nel flusso di input, il carattere enclosure
può sempre essere sottoposto a escape raddoppiandolo all’interno di una stringa tra virgolette,
producendo un singolo carattere enclosure
nel risultato analizzato.
Il carattere escape funziona in modo diverso:
se una sequenza di caratteri escape e
enclosure appare nell’input,
entrambi i caratteri saranno presenti nel risultato analizzato.
Quindi, per i parametri predefiniti, una riga CVS come
"a""b","c\"d" avrà i campi analizzati come
a"b e c\"d, rispettivamente.
A partire da PHP 8.4.0, dipendere dal valore predefinito di
escape è deprecato.
Deve essere fornito esplicitamente, sia per posizione che mediante l'uso
dei named arguments.
&warning.csv.escape-parameter;
&reftitle.returnvalues;
Restituisce un array indicizzato contenente i campi letti in caso di successo, &return.falseforfailure;.
Una riga vuota in un file CSV verrà restituita come un array
contenente un singolo campo null e non sarà trattata
come un errore.
¬e.line-endings;
&reftitle.errors;
Genera un ValueError se
separator o enclosure
non sono lunghi un byte.
Genera un ValueError se
escape non è lungo un byte o è una stringa vuota.
&reftitle.changelog;
&Version;&Description;8.4.0
L'affidamento sul valore predefinito di escape è ora
deprecato.
8.3.0
Viene restituita una stringa vuota invece di una stringa con un singolo
byte null per l'ultimo campo se contiene solo una chiusura
non terminata.
8.0.0length è ora nullable.
7.4.0
Il parametro escape ora accetta anche una stringa
vuota per disabilitare il meccanismo di escape proprietario.
&reftitle.examples;
Legge e stampa il contenuto di un file CSV
$num campi sulla riga $row: \n";
$row++;
for ($c=0; $c < $num; $c++) {
echo $data[$c] . " \n";
}
}
fclose($handle);
}
?>
]]>
&reftitle.seealso;
fputcsvstr_getcsvSplFileObject::fgetcsvSplFileObject::fputcsvSplFileObject::setCsvControlSplFileObject::getCsvControlexplodefilepack