This commit is contained in:
Marklogo 2024-02-15 09:10:38 +01:00
parent 4e56440f32
commit bb3a34af71

View File

@ -0,0 +1,93 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>INTRO6 PHP ESCRIBIR ARCHIVOS</title>
</head>
<body>
<h2>1. ESCRIBIR ARCHIVOS</h2>
<?php
// Manejo de archivos en PHP
//Verificar si existe un archivo
$nombre_fichero='escritura/prueba.txt';
if (file_exists($nombre_fichero)) {
echo "El fichero $nombre_fichero existe";
} else {
echo "El fichero $nombre_fichero no existe";
}
echo '<br>';
// Verificar si es editable
//is_writable()
//Abrir archivos fopen()
//Devuelvo 0 si no va, o coloca el puntero en una posición del archivo.
//$fp = fopen("miarchivo.txt", "r");
//Modo Descripción
//r Apertura para lectura. Puntero principio
//r+ Apertura para lectura y escritura. Puntero principio
//w Apertura para escritura. Puntero principio sobreescribe.No existe se intenta crear.
//w+ Apertura para lectura y escritura. Puntero principio sobreescribe. Si no existe se intenta crear.
//a Apertura para escritura. Puntero final. Si no existe se intenta crear.
//a+ Apertura para lectura y escritura. Puntero final. Si no existe se intenta crear.
//x Creación y apertura para sólo escritura. Puntero principio del archivo. Si el archivo ya existe dará error E_WARNING. Si no existe se intenta crear.
//x+ Creación y apertura para lectura y escritura.
//c Apertura para escritura. Si no existe se crea. Si existe no se sobreescribe ni da ningún error. Puntero principio.
//c+ Apertura para lectura y escritura. Mismo comportamiento que C.
//Abrir archivo con fopen()
$nombre_archivo = "escritura/letra.txt";
$conexion = fopen($nombre_archivo, "r");
echo '<br>';
if (!$conexion) { echo("Error abriendo archivo"); }
echo '<hr/>';
//Leer el archivo con fgets() o fread()
//fgets() lee solo una línea, se puede usar en bucles línea por línea
//fread() un tamaño de bytes
// Conocer tamaño de un archivo
//filesize($archivo)
//Ejemplo con fgets()
$tamanio_bufer =100; # bytes letras
$contenido=fread($conexion, $tamanio_bufer); // Nota: aquí podrías concatenar en una cadena, guardarlo por ahí, etcétera
echo "\nLeído: " .$contenido.'<br>';
// Cerrar archivo tras la lectura
fclose($conexion);
echo '<hr/>';
//Leer el contenido con file_get_contents()
//Lee todo el contenido no requiere fopen y fclose
// Obtener contenido de archivo como string
$todo_contenido = file_get_contents($nombre_archivo);
echo "El contenido es: " . "<pre>$todo_contenido</pre>";
echo '<hr/>';
//Escribir en archivos con php
//Método 1 fwrite()
$nombreArchivo = "escritura/hola.txt";
$archivo = fopen($nombreArchivo, "w");
//Con w lo crea si no existe y lo sobreescribe
fwrite($archivo, "Hola mundo azúl!"."\n"."Cómo va lo mío? ");
fclose($archivo);
//Metodo 2 file_put_contents()
//No requiere fopen y fclose, no sobrescribe
$nombreArchivo2 = "escritura/direccion.txt";
$datos = "New New York #456";
file_put_contents($nombreArchivo2, $datos ,FILE_APPEND | LOCK_EX);
?>
</body>
</html>