PHPファイル操作例 ディレクトリ操作例

王林
リリース: 2023-06-20 12:46:01
オリジナル
1315 人が閲覧しました

PHP では、一連の関数を使用してファイルやディレクトリを操作できます。この記事では、ディレクトリの作成、削除、移動など、PHP でのディレクトリ操作について簡単に紹介します。

1. ディレクトリの作成

PHP でディレクトリを作成するには、mkdir() 関数を使用できます。この関数の最初のパラメータは作成するディレクトリへのパスで、2 番目のオプションのパラメータは設定する許可ビットです。たとえば、次のコードは「test」という名前のディレクトリを作成します。

mkdir('test');
ログイン後にコピー

指定したディレクトリの下にディレクトリを作成する場合は、最初のパラメータにパスを追加できます。たとえば、次のコードは、「test」という名前のディレクトリに「subdir」という名前のサブディレクトリを作成します。

mkdir('test/subdir');
ログイン後にコピー

2. ディレクトリを削除します。

使用されなくなったディレクトリについては、次の手順を実行します。 rmdir() 関数を使用して削除します。この関数の引数は、削除するディレクトリへのパスです。たとえば、次のコードは「test」という名前のディレクトリを削除します。

rmdir('test');
ログイン後にコピー

rmdir() 関数を使用してディレクトリを削除する前に、ディレクトリが空である必要があることに注意してください。ディレクトリが空でない場合、「ディレクトリが空ではありません」エラーが発生します。空ではないディレクトリを強制的に削除する場合は、unlink() 関数を使用してディレクトリ内のすべてのファイルとサブディレクトリを削除してから、rmdir() 関数を使用してディレクトリ自体を削除します。たとえば、次のコードは、「test」という名前のディレクトリとそのすべての内容を削除します:

function deleteDirectory($dir) {
    if (!file_exists($dir)) {
        return true;
    }

    if (!is_dir($dir)) {
        return unlink($dir);
    }

    foreach (scandir($dir) as $item) {
        if ($item == '.' || $item == '..') {
            continue;
        }

        if (!deleteDirectory($dir . DIRECTORY_SEPARATOR . $item)) {
            return false;
        }
    }

    return rmdir($dir);
}

deleteDirectory('test');
ログイン後にコピー

3. ディレクトリを走査する

ディレクトリ内のすべてのファイルとサブディレクトリを走査するには、次のようにします。 scandir() 関数。この関数の引数は、スキャンするディレクトリへのパスです。たとえば、次のコードは、「test」という名前のディレクトリ内のすべてのファイルとサブディレクトリをリストします:

foreach (scandir('test') as $item) {
    if ($item == '.' || $item == '..') {
        continue;
    }

    echo $item . '<br>';
}
ログイン後にコピー

IV. 概要

この記事では、PHP でのディレクトリ操作のための 3 つの基本関数 :Create を紹介します。ディレクトリの削除 (mkdir())、ディレクトリの削除 (rmdir())、ディレクトリ内のすべてのファイルとサブディレクトリの走査 (scandir())。 PHP のファイルとディレクトリの操作機能は、Web アプリケーションでのディレクトリの作成、削除、管理に役立ち、アプリケーションをより柔軟で保守しやすくします。

以上がPHPファイル操作例 ディレクトリ操作例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート