ホームページ >バックエンド開発 >PHPチュートリアル >PHP は、ディレクトリ内のすべてのファイルを走査するように dir()、readdir() 関数をカスタマイズします_PHP チュートリアル
方法 1: dir() を使用してディレクトリを走査します
dir()関数は成功するとディレクトリクラスのインスタンスを返します
PHP dir() 構文形式は次のとおりです:
dir(directory);//directory はファイル名を表示する必要があるディレクトリの名前であり、パス情報を含めることができます
PHP dir() 使用例: アップロード ディレクトリ内のすべてのファイル名を一覧表示します:
コードは次のとおりです | |
$dir = @ dir("upload");//アップロード ディレクトリを開きます。ファイルを表示する必要があるディレクトリにファイルがない場合があり、次の場所でエラーが報告される可能性があるため、「@」はエラー メッセージをブロックできます。今回は「@」を使用します エラーを隠す //アップロードディレクトリ内のすべてのファイルをリストします while (($file = $dir->read()) !== false) { echo "ファイル名: " . $file ."; } $dir->close(); ?> |
出力結果は次のとおりです:
ファイル名:.
ファイル名:..
ファイル名:logo.gif
ファイル名:arrow.gif
ファイル名:bg.gif
例
コードは次のとおりです | |
関数ツリー($dir) { $mydir = dir($dir); While($file = $mydir->read()) { If($file != '.' && $file != '..') { If(is_dir("$dir/$file")) { echo 'ディレクトリ名:'.$dir.DIRECTORY_SEPARATOR.''.$file.' '; ツリー("$dir/$file"); }その他{ echo 'ファイル名:'.$dir.DIRECTORY_SEPARATOR.$file.' '; } } } $mydir->close(); } ツリー('./phpmyadmin'); |
方法 2 readir() を使用してディレクトリを走査する
定義と用法
readdir()関数は、opendir()で開かれたディレクトリハンドルのエントリを返します。
成功した場合、関数はファイル名を返し、それ以外の場合は false を返します。
文法
readdir(dir_stream)
例
コードは次のとおりです | |
header('content-type:text/html;charset=utf-8'); 関数リストDir($dir) { If(is_dir($dir)) { if($handle = opendir($dir)) { while($file = readdir($handle)) { If($file != '.' && $file != '..') { If(is_dir($dir.DIRECTORY_SEPARATOR.$file)) { echo 'ディレクトリ名:'.$dir.DIRECTORY_SEPARATOR.''.$file.' '; listDir($dir.DIRECTORY_SEPARATOR.$file); echo 'ファイル名:'.$dir.DIRECTORY_SEPARATOR.$file.' '; } } } } Closedir($handle); }その他{ echo '無効なディレクトリです!'; } } listDir('./phpmyadmin'); |