Cómo Leer y Crear Archivos CSV en PHP (Con Ejemplos Explicados)

Comparte

🧠 Introducción

Los archivos CSV son una forma común de almacenar y transferir datos estructurados, especialmente en aplicaciones web. En este tutorial, aprenderás cómo leer y crear archivos CSV usando PHP puro, sin frameworks.


📥 Cómo Leer un Archivo CSV en PHP

Supongamos que tienes un archivo llamado datos.csv con este contenido:

nombre,correo,edad
Juan,juan@email.com,28
Ana,ana@email.com,34

Código para leerlo:

<?php
$archivo = fopen("datos.csv", "r");

while (($fila = fgetcsv($archivo, 1000, ",")) !== FALSE) {
    echo "Nombre: " . $fila[0] . "<br>";
    echo "Correo: " . $fila[1] . "<br>";
    echo "Edad: " . $fila[2] . "<hr>";
}

fclose($archivo);
?>

📤 Cómo Crear un Archivo CSV en PHP

Puedes exportar datos fácilmente desde una base de datos o un formulario.

Ejemplo básico:

<?php
$datos = [
    ["nombre", "correo", "edad"],
    ["Pedro", "pedro@email.com", 25],
    ["Lucía", "lucia@email.com", 30]
];

$archivo = fopen("exportado.csv", "w");

foreach ($datos as $fila) {
    fputcsv($archivo, $fila);
}

fclose($archivo);

echo "Archivo CSV creado exitosamente.";
?>

📌 Consideraciones

  • fgetcsv() divide la línea del archivo CSV en un arreglo.
  • fputcsv() convierte un arreglo en una línea CSV válida.
  • Asegúrate de manejar la codificación de caracteres si tu archivo contiene acentos o símbolos especiales (puedes usar utf8_decode() o mb_convert_encoding()).

✅ Aplicaciones Comunes

  • Exportar reportes de ventas o usuarios
  • Importar catálogos de productos
  • Migrar datos entre plataformas





codigo fuente gratis