mayo 20, 2009

Borrar directorios (subdirectorios y su contenido) con PHP y Recursividad

Posted in Códigos tagged , , , , , , , , a 10:05 pm por Administrador

Este código borra los directorios: subdirectorios y todo su contenido, haciendo uso de una sola función en PHP, esto con recursividad.

Advertencia: asegurate especificar un directorio solo para probar, sin datos importantes pues al ejecutar el script borra todo el contenido sin contemplaciones.

set_time_limit(900);

$folder = trim(“\windows\ “);

delete_folder(dirname(__FILE__) .$folder);

function delete_folder($folder) {
$folder_contents = get_folder_contents($folder);
if ($folder_contents) {
foreach ($folder_contents as $__content) {
echo $__content[‘item’] .’
‘;
if (is_dir($__content[‘item’]))
delete_folder($__content[‘item’]);
else
unlink($__content[‘item’]);
}
}
rmdir($folder);
}

function get_folder_contents($folder) {
if( !is_dir($folder) ) {
return false;
}
$return_array = array();
$count = 0;
if( $dh = opendir($folder) ) {
while( ($file = readdir($dh)) !== false ) {
if( $file == ‘.’ || $file == ‘..’ ) continue;
$return_array[$count][‘item’] = $folder .$file .(is_dir($folder .$file) ? DIRECTORY_SEPARATOR : ”);
$count++;
}
closedir($dh);
}
return $return_array;
}

?>

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: