dominios y alojamiento web en hostalia

Gestión de archivos por PHP

10 de mayo de 2001
Valoración del artículo:
Recopilamos algunas funciones básicas para la gestión de archivos con PHP.
Atención: Contenido exclusivo de DesarrolloWeb.com. No reproducir. Copyright.
El tratamiento de archivos resulta ser una práctica muy común en cualquier sitio web. Muy a menudo nos vemos en la necesidad de procesar un texto para cambiarle el formato, buscar una cadena en su interior o cualquier otro tipo de operación.

PHP propone un sinfín de funciones para la gestión de archivos que van desde las más elementales de apertura, lectura y cierre a otras más rebuscadas como el cálculo de espacio en el disco duro, tamaño del archivo, gestión de derechos de acceso...

En este artículo pretendemos mostraros cuáles son las funciones más esenciales para el tratamiento de archivos para posteriormente ejemplificarlas en un par de scripts que os pueden resultar útiles:

Funciones de gestión de archivos
Función Descripción Sintaxis
copy Copia un archivo copy($origen,$destino)
rename Cambia el nombre del archivo de $antes a $despues rename($antes,$despues)
unlink Borra el archivo unlink($archivo)

Funciones para la lectura de archivos
Función Descripción Sintaxis
fopen Abre un archivo y le asigna un identificador id. Veremos el modo más adelante $id = Fopen($archivo, $modo)
fgets Lee una línea de un archivo hasta un numero máximo de caracteres fgets($id,$max)
fwrite Escribe una cadena dentro del archivo fwrite($id, $cadena)
fseek Avanza o retrocede el puntero del archivo un cierto numero de posiciones fseek($id,$posiciones)
feof Comprueba si el puntero que lee el archivo ha llegado al final feof($id)
fpassthru lee completamente el archivo y lo muestra fpassthru($id)
fclose Cierra el archivo abierto previamente fclose($id)

Las operaciones más elementales, copia, borrado y cambiar el nombre, requieren únicamente el nombre (y path) del archivo sobre el cual se ejerce la operación. Para operaciones más complejas, como la lectura de líneas o la escritura de texto dentro del archivo, se requiere de una previa apertura del archivo al cual le asignaremos un indentificador $id.

Una vez abierto el archivo, podremos desplazarnos a lo largo de él por medio de un puntero imaginario que avanza o retrocede por las líneas de texto y mediante el cual nos situaremos en el lugar escogido para insertar, modificar o simplemente copiar una cadena.

Existen distintos modos de apertura que nos permiten definir las acciones que podemos realizar sobre el archivo. Aquí os mostramos los diferentes modos que, como veréis, son de lo más variado:

Modos de apertura de archivos
Sintaxis Descripción
'r' Sólo lectura
'r+' Lectura y escritura
'w' Sólo escritura
'w+' Lectura y escritura. Suprime el contenido anterior si se escribe. El archivo es creado si no existe.
'a' Sólo escritura. El archivo es creado si no existe y el puntero se coloca al final.
'a+' Lectura y escritura. El archivo es creado si no existe y el puntero se coloca al final.

A notar que si tratamos con archivos en binario hemos de colocar una b delante del modo (ej. ba, bw+,...)

Recordamos que esta lista no es más que una recopilacion y que muchas otras funciones relacionadas pueden sernos también útiles.

Nota:También puedes profundizar más en la gestión de archivos con nuestro manual Gestión de archivos en PHP

Compartir en redes sociales

Comentarios
Fueron enviados 4 comentarios al artículo
1 comentario no revisado
3 comentarios revisados:
Por: Miguel
14/7/2005
Sólo quería comentar que el link relativo a las funciones de manejo de archivos pueden ser consultadas también en castellano en la siguiente dirección.

< a href="http://www.php.net/manual/es/ref.filesystem.php" target=_blank>http://www.php.net/manual/es/ref.filesystem.php

Gracias
Por: Lore
12/9/2006
Ana, para subir un archivo por medio del form tenes que usar el move_uploaded_file, no el copy, ya que este (por lo menos hasta lo que yo tengo entendido) solo funciona para operaciones con archivos ya dentro del servidor.

ivansv
Ayuda
18/4/2011
Soy totalmente nuevo en esto del php, es lo primero que voy hacer, haber tengo que web donde la gente sube imágenes, la web las re-nombra numerándolas , lego en el pedido tengo el numero de foto y el texto que quiere el cliente. la url de la imagen esta clara ...images/uploads/xxx.jpg
Bien ahora tengo hecho un artivo de html, lo abrimos en y modificamos la url, cerramos abrimos con el crome y se nos abre la imagen, ahí ya la copiamos y pegamos en el editor....

Bien quiero hacer una pagina con un campo de texto donde escribir la ruta de la imagen y que se habrá. Estoy haciendo pruebas y no consigo nada.
¿ como puedo hacer esto?

Manuales relacionados
Categorias relacionadas
El autor
Rubén Alvarez
Redactor de DesarrolloWeb.com
http://www.desarrolloweb.com
Últimas noticias
Donaciones
Si piensas que te hemos ayudado y merecemos tu apoyo económico...