Lectura / Escritura de ficheros

fopen

$fp = fopen($file, "r+");
r Abre el archivo para lectura. Coloca el puntero al principio del archivo.
r+ Abre el archivo para lectura y escritura. Coloca el puntero al principio del archivo.

Fopen – append (añadir)

$fp = fopen($file, "a+");
a Abre el archivo para escritura. Coloca el puntero al final del archivo. Si el fichero no existe lo crea
a+ Abre el archivo para lectura y escritura. Coloca el puntero al final del archivo. Si el fichero no existe, lo crea

Nota: Si el archivo es abierto en uno de estos modos, cualquier información que sea escrita siempre será añadida al final del archivo.

Escribir en disco (I)

<?php
	$file = "1-escribirEnDisco.txt";
	/*Creamos un puntero a partir del cual vamos a escribir*/	
	$fp = fopen($file, "r+");

	/*El documento de texto en el que escribo debería estar en la misma codificación que el presente php*/
	fputs($fp, "fputs es más rápida que fwrite");
	fwrite($fp, "fputs es más rápida que fwrite");
	/*cerrar el archivo*/
	fclose($fp);
?>

Escribir en disco (II) Ejemplo de un libro de visitas

<?php
	$file = "2-libroVisitasNombre.txt";
	if(isset($_POST['enviar'])){
		$nombre = $_POST['nombre'];
		/*Creamos un puntero a partir del cual vamos a escribir*/
		$fp = fopen($file, "r+");
		$old = fgets($fp);
		/*Llevamos el cursor al principio del texto*/
		rewind($fp);
		/*Escribir la nueva entrada antes que las antiguas en el archivo*/
		fputs($fp, $nombre." \n ".$old);
		fclose($fp);
	}
	readfile($file);
?>

Ejercicio – Hacer un libro de visitas

Para escribir la fecha: $dateOfEntry = date("j-n-y")

Para leer todo el archivo de texto, incluso después de cerrar el archivo: readfile($file);

Ejercicio contador

Hacer un contador.

Ejercicio contador con imágenes

Haciendo uso de las funciones de cadena substr y strlen, hacer un contador que imprima una fotografía para cada uno de los dígitos.

icono de mandar un mailPreguntame lo que quieras!
Pablo Monteserín
contacta conmigoPablo Monteserín

El servicio de resolución de dudas técnicas es sólo para los usuarios premium. Si tienes cualquier otra duda, usa el formulario de contacto. ¡Gracias!