ホームページ >バックエンド開発 >PHPの問題 >php opendirとfopenの違いは何ですか

php opendirとfopenの違いは何ですか

青灯夜游
青灯夜游オリジナル
2021-07-02 18:14:112624ブラウズ

違い: fopen() 関数はファイルまたは URL を開くために使用され、opendir() 関数はディレクトリ ハンドルを開くために使用されます。 fopen() 関数が指定されたファイルを見つけられない場合は、そのファイルが自動的に作成されますが、opendir() 関数が指定されたディレクトリを見つけられない場合は、直接エラーがスローされます。

php opendirとfopenの違いは何ですか

このチュートリアルの動作環境: Windows7 システム、PHP7.1 バージョン、DELL G3 コンピューター

fopen() 関数を使用して開きます。ファイルまたは URL。ディレクトリ ハンドルを開くには、opendir() 関数が使用されます。

ディレクトリをオープンするのもファイルをオープンするのもオープン操作ですが、使用する関数が異なり、指定したファイルが見つからなかった場合の処理​​結果も異なります。 fopen() 関数は、指定されたファイルが見つからない場合、自動的にファイルを作成しますが、ディレクトリを開く opendir() 関数はそれほど熱心ではなく、直接エラーをスローします。

opendir() 関数の構文形式は次のとおりです。

opendir(string $path[, resource $context])

このうち、パラメータ $path は開くディレクトリのパス、$contextはオプションのパラメータです。ディレクトリ ハンドルのコンテキストを設定するために使用する $context は、ディレクトリ フローの動作を変更するオプションのセットです。
opendir() 関数は、実行が成功した場合はディレクトリ ハンドルのリソースを返し、失敗した場合は FALSE を返します。パラメータ $path が有効なディレクトリではない場合、または権限制限またはファイル システム エラーによりディレクトリを開けない場合、opendir() 関数は FALSE を返し、レベル E_WARNING の PHP エラー メッセージを生成します。 opendir() の前に # シンボルを追加して、エラー メッセージの出力を抑制できます。

例: opendir() 関数を使用して、指定されたディレクトリを開きます。

<?php
    $dir = &#39;./test/&#39;;
    if(is_dir($dir)){
        $info = opendir($dir);
        var_dump($info);
    }
?>

実行結果は次のとおりです。

resource(3) of type (stream)

この例では、 is_dir() 関数を使用します。 、指定された引数がディレクトリではないことを判断するために使用されます。

推奨学習: 「PHP ビデオ チュートリアル

以上がphp opendirとfopenの違いは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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