ホームページ  >  記事  >  バックエンド開発  >  PHPでrmdir関数を使用してディレクトリファイルを削除する方法

PHPでrmdir関数を使用してディレクトリファイルを削除する方法

不言
不言オリジナル
2019-01-10 17:48:503404ブラウズ

php がディレクトリを削除するために使用する必要がある関数は rmdir です。rmdir は指定したディレクトリを削除する関数です。よく使われる関数です。この記事では、 rmdir関数の具体的な使い方。

PHPでrmdir関数を使用してディレクトリファイルを削除する方法

まず rmdir 関数の基本構文を見てみましょう

ディレクトリ名 (ディレクトリへのパス) をパラメータ。

rmdir(目录名称);

ディレクトリが指定されていないため削除できない場合は、e_warning レベルのエラーが発生しますので注意してください。

また、rmdir で指定したディレクトリにファイルや他のディレクトリが存在する場合、rmdir で指定したディレクトリを削除することはできません。

この操作を実行するときは、指定したディレクトリを一度空にしてから、rmdir を使用してディレクトリを再度削除する必要があります。

rmdir 関数の使用方法

具体的な例を見てみましょう

mkdir('sample');
if (is_dir('sample')) {
    $files = array_diff(scandir('sample'), array('.','..'));
    if (empty($files)) {
        echo "删除目录:sample\n";
        rmdir('sample');
    }
}

サンプル プログラムでは、まず mkdir 関数を使用してサンプル ディレクトリを作成します。

実際にrmdir関数を実行する前に、「指定したディレクトリの存在」と「指定したディレクトリが空かどうか」を確認する必要があります。

そうしないと、rmdir 関数の実行時にエラーが発生する可能性があります。

空でないディレクトリの削除

rmdir で指定したディレクトリにファイルや他のディレクトリがある場合、指定したディレクトリは rmdir で削除できません。

したがって、空ではないディレクトリを削除する場合は、指定したディレクトリ内の他のディレクトリとファイルをすべて削除してから、rmdir 関数を使用して再度削除する必要があります。

具体的な例を見てみましょう

//
function remove_directory($dir) {
    $files = array_diff(scandir($dir), array('.','..'));
    foreach ($files as $file) {
//
        if (is_dir("$dir/$file")) {
//
            remove_directory("$dir/$file");
        } else {
//
            unlink("$dir/$file");
            echo "目录:" . $dir . "/" . $file . "删除\n";
        }
    }
//
    echo "目录:" . $dir . "删除\n";
    return rmdir($dir);
}
//
//
mkdir('test1');
mkdir('test1/test2');
touch('test1/test2/test3');
//
//
remove_directory('test1');

サンプル プログラムでは、まず、remove_directory という名前の関数を定義します。

このremove_directory関数は、指定されたディレクトリの内容を確認します。内容がなければ、指定されたディレクトリは削除され、内容があれば、内容の変更に応じて処理されます。

3行目では、指定したディレクトリ内のファイルグループ(別のディレクトリとファイル)を取得します。4行目から14行目までのファイルグループごとに、ディレクトリの場合はunlink関数を使用してファイルを削除します。 、remove_directory 関数を再度呼び出してください。

最後に17行目で、空になった指定ディレクトリをrmdir関数で削除します。

20 ~ 23 行目で空ではないディレクトリを作成します。

行 26 では、remove_directory 関数を使用して空ではないディレクトリを削除します。

以上がPHPでrmdir関数を使用してディレクトリファイルを削除する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。