Restoration
1/30/2017 - 11:44 AM

rmdir()

rmdir()

rmdir ディレクトリを削除する

ファイル数をカウントしてディレクトリ内にファイルが存在しないかつ
権限が書き込み可能であるかを判定
両方ともtrueであった場合rmdir関数を実行してディレクトリを削除する

$dir = 'data';

$dirContentsNum = 0;//ファイル数
//scandir()関数でディレクトリ内のファイルなどの数を調べる
if(is_dir($dir) && ($dirContents = scandir($dir)) !== false ){
    //ディレクトリ自身「.」と親ディレクトリ「...」を配列から削除します
    $dirContents = array_diff($dirContents,array('.','..'));
    //var_dump($dirContents);
    $dirContentsNum = count($dirContents);
}
//ディレクトリ削除
if($dirContentsNum === 0 && is_writable($dir) && rmdir($dir)){
    echo "<p>ディレクトリ:".$dir."を削除しました</p>";
} else {
    echo "<p>ディレクトリ:".$dir."を削除に失敗しました</p>";
}