Last active
December 26, 2018 17:36
-
-
Save parzibyte/8a9c4cb152404f08cf5e720ee5656fa8 to your computer and use it in GitHub Desktop.
Leer archivo CSV desde PHP
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
/* | |
Ejemplo de lectura de CSV | |
desde PHP | |
Visita parzibyte.me/blog | |
*/ | |
# La longitud máxima de la línea del CSV. Si no la sabes, | |
# ponla en 0 pero la lectura será un poco más lenta | |
$longitudDeLinea = 1000; | |
$delimitador = ","; # Separador de columnas | |
$caracterCircundante = '"'; # A veces los valores son encerrados entre comillas | |
$nombreArchivo = "productos.csv"; #Ruta del archivo, en este caso está junto a este script | |
# Abrir el archivo | |
$gestor = fopen($nombreArchivo, "r"); | |
if (!$gestor) { | |
exit("No se puede abrir el archivo $nombreArchivo"); | |
} | |
# Comenzar a leer, $numeroDeFila es para llevar un índice | |
$numeroDeFila = 1; | |
while (($fila = fgetcsv($gestor, $longitudDeLinea, $delimitador, $caracterCircundante)) !== false) { | |
if ($numeroDeFila === 1) { | |
echo "Los encabezados son: "; | |
} | |
# Ahora $fila es un arreglo. Podríamos acceder al precio de compra en $fila[1] | |
# porque los índices de los arreglos comienzan en 0 | |
foreach ($fila as $numeroDeColumna => $columna) { | |
echo "En la columna $numeroDeColumna tenemos a $columna\n"; | |
} | |
# Para separar la impresión | |
echo "\n\n"; | |
# Aumentar el índice | |
$numeroDeFila++; | |
} | |
# Al finar cerrar el gestor | |
fclose($gestor); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Nombre | Precio de compra | Precio de venta | Cantidad | |
---|---|---|---|---|
Mouse Logitech | 400 | 500 | 10 | |
Xiaomi Mi A1 | 500 | 600 | 15 | |
Auriculares Sony | 50 | 500 | 10 | |
Galletas de chocolate | 10 | 12 | 500 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment