CSV es un tipo de archivo. Significa valores separados por comas. El software de hojas de cálculo como Excel le ofrecerá la oportunidad de guardar archivos con la extensión CSV. Veremos ahora cómo trabajar con este tipo de archivos.

La siguiente imagen muestra una hoja de cálculo de Excel. Es solo una lista de precios simple:

La siguiente imagen muestra la hoja de cálculo que se guarda como un archivo CSV:

Y así es como se ven los datos en un editor de texto:

Un archivo CSV que se muestra en un editor de texto.

El archivo CSV anterior es con el que queremos trabajar. Muestra cada línea separada por comas.

PHP tiene una función que le permite trabajar con archivos CSV. Se llama fgetcsv (). Es como la función fgets que usó anteriormente. La diferencia es que fgetcsv () separa cada línea con comas y coloca cada parte en una matriz. Antes de probar el siguiente código, asegúrese de copiar el
widgets.csv archivo, de los que descargó, a la misma carpeta donde está su script. El archivo widgets.csv está en la carpeta de scripts. Aquí está el código:

$ file_handle = fopen ("widgets.csv", "r");

while (! feof ($ file_handle)) {

$ line_of_text = fgetcsv ($ file_handle, 1024);

imprimir $ line_of_text[0] . $ line_of_text[1]. $ line_of_text[2] . "
";

}

fclose ($ file_handle);

?>

Cuando ejecute el script, debería ver todas las líneas de texto impresas. (Sin embargo, es posible que tenga un signo de interrogación en lugar del símbolo de la moneda). Así es como funciona.

Las dos primeras líneas que ya conoció: obtenga un identificador del archivo que desea abrir, luego cree un ciclo while para rodearlo.

$ file_handle = fopen ("widgets.csv", "r");

while (! feof ($ file_handle)) {

}

Sin embargo, dentro del ciclo while, tenemos nuestra línea fgetcsv:

$ line_of_text = fgetcsv $ file_handle, 1024
);

Entre los corchetes redondos de fgetcsv, hemos escrito cosas: nuestro identificador de archivo y el tamaño de la línea para leer. El tamaño, en este caso, es 1024 - 1 kilobyte. Puede cambiar este valor. Cuando la función obtiene la línea de texto, la coloca en la variable que hemos llamado $ line_of_text.

Pero $ line_of_text ahora será una matriz. Cada línea de nuestro archivo de texto se ve así:

Widget1, azul, £ 10

La fgetcsv La función dividirá esta línea cuando vea la coma. Luego crea una posición en la matriz para contener cada parte de la línea. Entonces configurará una matriz con tres posiciones, en nuestro caso. Esas posiciones serán las siguientes:

$ line_of_text[0]
$ line_of_text[1]
$ line_of_text[2]

Para imprimirlo todo, teníamos esta línea:

imprimir $ line_of_text[0] . $ line_of_text[1]. $ line_of_text[2] . "
";

Todo lo que estamos haciendo aquí es imprimir lo que hay en cada posición de la matriz. Luego, agregamos un salto de línea HTML, solo para fines de visualización.

Si tiene archivos CSV de una hoja de cálculo que necesita mostrar en una página web, el fgetcsv ¡La función puede ser muy útil!

En la siguiente parte, verá otras opciones para leer un archivo de texto línea por línea



<- Atrás una página | Pasar a la siguiente parte ->

Volver a la página de contenido de PHP

Recomendado para ti