SplFileObject::fgetcsvRecupera una línea del archivo y la analiza como datos CSV
&reftitle.description;
publicarrayfalseSplFileObject::fgetcsvstringseparator","stringenclosure"\""stringescape"\\"
Recupera una línea del archivo y la analiza como datos CSV
y devuelve un array que contiene todos los campos leídos.
&reftitle.parameters;
separator
El delimitador de campo (un solo carácter de un byte).
Por omisión, , o el valor definido por una llamada previa a
SplFileObject::setCsvControl.
enclosure
El carácter utilizado para encerrar el valor de un campo (un carácter de un solo byte).
Por omisión, será una comilla doble o bien el valor definido utilizando
el método SplFileObject::setCsvControl.
escape
El carácter de escape de campo (un solo carácter de un byte).
Por omisión, " o el valor definido por una llamada previa a
SplFileObject::setCsvControl.
Un &string; vacío ("") desactiva el mecanismo de escape propietario.
A partir de PHP 8.4.0, depender del valor por omisión de
escape está deprecado.
Debe ser proporcionado explícitamente ya sea por posición, ya sea mediante
el uso de los argumentos nombrados,
o mediante una llamada a SplFileObject::setCsvControl.
&warning.csv.escape-parameter;
&reftitle.returnvalues;
Devuelve un array indexado que contiene todos los campos leídos, o &false;
si ocurre un error.
Una línea vacía de un archivo CSV será devuelta en forma de un array
contenido un solo campo &null; a menos que se utilice
SplFileObject::SKIP_EMPTY | SplFileObject::DROP_NEW_LINE,
en cuyo caso, las líneas vacías serán ignoradas.
&reftitle.changelog;
&Version;&Description;7.4.0
El parámetro escape ahora acepta una cadena de
caracteres vacía para desactivar el mecanismo de escape propietario.
&reftitle.examples;
Ejemplo con SplFileObject::fgetcsv
eof()) {
var_dump($file->fgetcsv());
}
?>
]]>
Ejemplo con SplFileObject::READ_CSV
setFlags(SplFileObject::READ_CSV);
foreach ($file as $row) {
list($animal, $class, $legs) = $row;
printf("Un %s es un %s con %d patas\n", $animal, $class, $legs);
}
?>
]]>
Contenido de animals.csv
&example.outputs.similar;
&reftitle.seealso;
SplFileObject::fputcsvSplFileObject::setCsvControlSplFileObject::getCsvControlSplFileObject::setFlagsSplFileObject::READ_CSVSplFileObject::currentfputcsvfgetcsvstr_getcsv