« PHP:filesize()関数 | メイン | PHP:filetype()関数 »

2006年04月20日

PHP:ディレクトリを削除する

PHPスクリプトでサーバ上のディレクトリを削除する場合、ディレクトリ内に一つでもファイルが存在すると、そのファイルを削除してからでないとディレクトリをまとめて消すことができません。

ディレクトリ自体をまるごと削除したい場合には以下のメソッドが便利です(削除対象のディレクトリ内にディレクトリが入っていない場合のスクリプトです)。

/* ディレクトリ削除メソッド */
function deleteDir($rootPath){

    $strDir = opendir($rootPath);
    while($strFile = readdir($strDir)){
        if($strFile != '.' && $strFile != '..'){  //ディレクトリでない場合のみ
            unlink($rootPath.'/'.$strFile);
        }
    }
    rmdir($rootPath);
}

deleteDir('/home/httpd/vhosts/test.aaa.com/test/');
//引数には、削除したいディレクトリのルートからの絶対パスを記述します。

※上記の結果、「test.aaa.com内の test ディレクトリ」が削除されます。

投稿者 wing : 2006年04月20日 01:01

コメント