【PHP8.x】opendir関数の使い方

作成日: 更新日:

opendir関数は、指定されたパスにあるディレクトリを開き、そのディレクトリの内容を読み書きするための準備を実行する関数です。この関数が正常に実行されると、開いたディレクトリを参照するための「ディレクトリハンドル」と呼ばれる特別なリソースを返します。このディレクトリハンドルは、その後のディレクトリ操作において、どのディレクトリに対して処理を行うかを識別するための「ID」のような役割を果たします。

例えば、opendir関数で開いたディレクトリから、readdir()関数を使ってファイルやディレクトリの名前を一つずつ読み込んだり、rewinddir()関数で読み込み位置を先頭に戻したり、closedir()関数で開いたディレクトリを閉じる際にこのハンドルを使用します。

指定されたパスにディレクトリが存在しない場合や、アクセス権限がないなどの理由でディレクトリを開くことができなかった場合には、opendir関数はfalse(偽)を返します。そのため、関数がfalseを返した場合はエラー処理を行う必要があります。ディレクトリ操作の完了後は、システムリソースの無駄な消費を防ぎ、予期せぬ問題を回避するために、必ずclosedir()関数を使って開いたディレクトリを閉じるようにしてください。

基本的な使い方

構文(syntax)

<?php
$directoryHandle = opendir('/path/to/your/directory');
?>

引数(parameters)

string $directory, ?resource $context = null

  • string $directory: 開くディレクトリのパスを指定する文字列
  • ?resource $context = null: ストリームコンテキストを指定するリソース(省略可能、デフォルトはnull)

戻り値(return)

resource|false

ディレクトリを開くためのリソース、または失敗した場合は false を返します。

【PHP8.x】opendir関数の使い方 | いっしー@Webエンジニア