Borrar un directorio no vacio con PHP
Muchos habran visto que al querer borrar un directorio que no esta vacio usando la funcion rmdir() nos arroja un error informandonos sobre esto
Por eso cree esta funcion que elimina todo el arbol completo de archivos y carpetas dentro de un directorio en particular
La definicion es la siguiente:
/** * Remove a non empty directory * @author Cristián Pérez * @param string $path Folder Path * @return bool */ function removeDirectory($path) { $path = rtrim( strval( $path ), '/' ) ; $d = dir( $path ); if( ! $d ) return false; while ( false !== ($current = $d->read()) ) { if( $current === '.' || $current === '..') continue; $file = $d->path . '/' . $current; if( is_dir($file) ) removeDirectory($file); if( is_file($file) ) unlink($file); } rmdir( $d->path ); $d->close(); return true; }
La implementacion es la siguiente:
removeDirectory("/path/to/dir");
Espero que les sirva! Saludos!
gran aporte open source a la cloud computing !!
gdw