PHP manipulación de directorios

Usando el lenguaje de programación PHP podemos navegar y alterar la estructura de directorio como si en la misma línea de comandos nos encontrasemos, para empezar vamos a ver como establecer un directorio de trabajo, como crear directorio y como borrar directorios.
Conviene aclarar que a php le podemos pedir que trabaje con cualquier directorio del sistema, si bien, nosotros sólo vamos a trabajar con la carpeta www, por seguridad y comodidad.

Establecer directorio de trabajo

El directorio de trabajo será donde podremos realizar nuestra prácticas, para establecerlo primero crearemos en nuestro servidor la carpeta trabajo, que estará situada en …../www/trabajo. Si estamos en Windows usando Wamp la carpeta tendrá esta ruta: c:\wamp\www\trabajo (ruta absoluta) y en linux tendrá esta ruta:/var/www/trabajo (ruta absoluta)
Estableceremos la carpeta de trabajo usando la función chdir($ruta). Recibe una ruta y devueve TRUE si todo ha sido correcto y FALSE en caso contrario, veámoslo:

<!DOCTYPE html>
<html lang="es">
<head>    <meta charset="utf-8"/>
    <title>PHP manejo de directorios</title>
</head>
<body>
<?php
if (chdir("/var/www/trabajo/"))
	echo "Directorio de trabajo cambiado";
else
	echo "Problemas al establecer el directorio de trabajo, ¿seguro que existe y es accesible?";
?>
</body>
</html>

Creación de directorios con PHP

Una vez establecido el directorio de trabajo podremos crear directorio dentro de él, para ello usaremos la función mkdir($ruta,$permisos), la ruta va desde el directorio de trabajo (ruta relativa) y los permisos son como se muestra:

  • 4, lectura
  • 2, escritura
  • 1, ejecución
  • El primer bit siempre cerá un cero
  • El orden es propietario, grupo y otros
  • Todos los permisos para el propietario sería: 0700.
  • Todos para el propietario y lectura escritura para el grupo sería 0760
  • Por defecto usaremos 0700

Veamos un ejemplo

<!DOCTYPE html>
<html lang="es">
<head>    <meta charset="utf-8"/>
    <title>PHP manejo de directorios</title>
</head>
<body>
<?php
if (chdir("/var/www/trabajo/"))
	echo "<p>Directorio de trabajo cambiado</p>";
else
	echo "<p>roblemas al establecer el directorio de trabajo, seguro que existe y es accesible?</p>";

if (mkdir("imagenes",0700))
	echo "<p>Directorio creado</p>";
else
	echo "<p>problemas al crear el directorio</p>";
?>
</body>
</html>

Borrado de undirectorio

Para borrar un directorio usaremos la función rmdir($ruta), esta función sólo borra directorio vacíos y por supuesto en los que tengamos permisos, para borrar el directorio del caso anterior usaremos este código.

<!DOCTYPE html>
<html lang="es">
<head>    <meta charset="utf-8"/>
    <title>PHP manejo de directorios</title>
</head>
<body>
<?php
if (chdir("/var/www/trabajo/"))
	echo "<p>Directorio de trabajo cambiado</p>";
else
	echo "<p>Problemas al establecer el directorio de trabajo, seguro que existe y es accesible?</p>";

if (rmdir("imagenes"))
	echo "<p>Directorio borrado</p>";
else
	echo "<p>Problemas al borrar el directorio</p>";
?>
</body>
</html>

Ejercicios

Estos ejercicios se harán dentro de …/www/trabajo

  1. crea la siguiente estructura de trabajo: trabajo:
    • imagenes
    • textos
      • Cortos
      • Largos
    • notas
    • src
  2. Ahora borra el directorio de trabajo, recuerda que no lo puedes borrar si no esta vació por tanto tendrás que borrar de dentro a fuera

Originally posted 2011-03-14 19:58:04.

2 Responses to “ PHP manipulación de directorios ”

Deja un comentario