Otro miércoles más, os presentamos nuestro particular Curso de PHP.
Si os habéis perdido los anteriores o si acabas de llegar, aquí tenéis un enlace con todos los Cursos PHP a modo recopilatorio.
Lo primero de todo, vamos a dar una posible solución al ejercicio de sesiones que planteamos la semana pasada.
A continuación tenéis el ejercicio resuelto y la introducción a los ficheros.
Primero vamos con el index.php
Como veis en esta parte, creamos la sesión y también unas cuantas variables de sesión. Ponemos un link a la pagina que la mostrará.
Ahora mostrar.php
Mostramos las variables de entorno sin más.
Manejo básico de ficheros en PHP
Ahora que ya nos hemos afianzado un poco con las sesiones vamos a ver un poco el manejo básico de ficheros en PHP.
Antes de empezar a manejar ficheros, es importante comentar que no vamos explicar paso por paso algunas funciones como por ejemplo filesize() que devuelve el tamaño de un fichero de texto, o file_exists()que comprueba si existe el fichero. Si se tienen dudas con alguna de las funciones usadas pero no explicadas aquí, se pueden hacer dos cosas preguntar o buscar en la ayuda oficial de PHP.
Una vez dicho esto, vamos a ver ficheros.
Vamos a empezar por la función fopen() que es una de las funciones básicas para el trabajo con ficheros, esta función, si es de las que vamos a ver en profundidad, vamos con ella.
La función fopen() nos sirve para abrir un archivo, para ello necesitamos pasarla dos argumentos, el primero es la ruta del archivo/nombre del archivo (si está en el directorio en el que está el script) que queremos abrir, y la segunda un flag que indicará el método de apertura.
Los métodos de apertura son los siguientes:
‘r’ Apertura en modo solo lectura, situando el puntero al principio del fichero.
‘r+’ Apertura en modo lectura y escritura, situando el puntero al principio del archivo.
‘w’ Apertura en modo sólo escritura; situando el puntero al principio del archivo, elimina todo el contenido previo del archivo. Si el archivo no existe intenta crearlo.
‘w+’ Apertura en modo lectura y escritura; situando el puntero al principio del archivo, elimina todo el contenido previo del archivo. Si el archivo no existe intenta crearlo.
‘a’ Apertura en modo sólo escritura; situando el puntero al final del archivo. Si el archivo no existe se intenta crear.
‘a+’ Apertura en modo lectura y escritura; situando el puntero al final del archivo. Si el archivo no existe se intenta crear.
Existen otras 4 pero si las vemos, será más adelante.
Nota: Al abrir un fichero en PHP hacemos uso de un puntero, que indica desde donde vamos a empezar a realizar las acciones pertinentes, si está en el principio del archivo, empezará desde ahí sobrescribiendo lo que se encuentre por delante (hasta donde sobrescriban esas acciones, si no sobrescriben todo, quedará rastro del contenido anterior), en cambio si el fichero esta al final añadirá contenido, al contenido que hubiese previamente, por último si el puntero está en otro punto, las acciones empezarán desde ahí conservando todo lo que este tras el puntero y sobrescribiendo el resto con las nuevas acciones (hasta donde estas ocupen, si no sobrescriben todo, quedará rastro del contenido anterior).
La función fopen() devuelve un descriptor de fichero, que es algo así como un identificador del fichero sobre el que estamos trabajando y que será solicitado por muchas funciones usadas para manejo de archivos.
Ejemplo de uso de la función fopen():
Nota: en el ejemplo se comprueba previamente si el archivo existe, y se usa fclose() para cerrarlo, fclose() lo veremos mas adelante.
Cerrar un archivo
Tan simple como pasarle a la función fclose() el descriptor del archivo.(ejemplo arriba).
Hasta aquí hemos llegado, la semana que viene seguiremos con ficheros y empezaremos a leer/escribir ficheros.