miércoles, 18 de junio de 2025

Archivos en PHP

 

 ¿Qué es un archivo?

  • .dat significa "data" (datos).

  • Es un archivo de texto plano o binario que guarda datos estructurados o no estructurados.

  • No tiene una estructura fija, por lo que tú decides el formato (por ejemplo: separados por comas, saltos de línea, binarios, serializados, etc.).


 ¿Para qué se usa un archivo en PHP?

En PHP, un .dat se puede usar para:

  • Guardar registros simples (por ejemplo: nombre, edad, email).

  • Almacenar información persistente sin usar una base de datos.

  • Hacer logs o respaldos.

  • Transferir estructuras serializadas (serialize() y unserialize()).

  • Almacenar binarios (imágenes, objetos).


 Funciones clave para manipular en PHP

1. Abrir un archivo

$archivo = fopen("datos.dat", "a+"); // Abrir para leer y escribir

2. Escribir datos

fwrite($archivo, "Juan,25,juan@gmail.com\n");

3. Leer datos

rewind($archivo); // Volver al inicio while (!feof($archivo)) { $linea = fgets($archivo); echo $linea . "<br>"; }

4. Cerrar archivo

fclose($archivo);

 Ejemplo completo (lectura y escritura)

<?php $archivo = fopen("usuarios.dat", "a+"); // Escribir un nuevo usuario fwrite($archivo, "Anderson,20,anderson@gmail.com\n"); // Leer todos los usuarios rewind($archivo); // volver al inicio while (!feof($archivo)) { $linea = fgets($archivo); echo $linea . "<br>"; } fclose($archivo); ?>

 Formatos comunes de datos

  • Separados por comas (CSV): nombre,edad,email

  • Separados por tabuladores: nombre \t edad \t email

  • Serializados: a:2:{i:0;s:4:"Juan";i:1;s:4:"Luis";}

    $datos = ["Juan", "Luis"]; $serializado = serialize($datos); fwrite($archivo, $serializado);
  • JSON: más moderno que .dat, pero se puede guardar así también.

    $json = json_encode(["nombre" => "Juan", "edad" => 25]); fwrite($archivo, $json);

 Consejos de seguridad

  • Asegúrate de usar htmlspecialchars() o filter_var() para sanitizar datos antes de escribirlos.

  • Usa permisos adecuados (chmod 644 o más restrictivos).

  • No guardes contraseñas o datos sensibles sin cifrar.


 Ventajas de usar

  • Simplicidad (no requiere base de datos).

  • Útil en scripts pequeños o educativos.

  • Portabilidad.

 Desventajas

  • No escalable (mal rendimiento con muchos datos).

  • No estructurado por defecto.

  • Difícil de mantener sin un formato claro.

Imagen:



No hay comentarios:

Publicar un comentario