ホームページ  >  記事  >  バックエンド開発  >  PHPフォルダートラバーサルのいくつかの方法

PHPフォルダートラバーサルのいくつかの方法

小云云
小云云オリジナル
2018-03-01 13:20:211685ブラウズ

この記事では主に、php フォルダーをトラバーサルするいくつかの方法を紹介します。お役に立てれば幸いです。

関数

<span style="font-size: 14px;">function dirTree(){<br>    if(!is_dir($path)) return [];        $files = [];        $dir = opendir($path);        while($file = readdir($dir)) {            if($file == '.' || $file == '..') continue;            $new_path = trim($path, '/').'/'.trim($file, '/');            $files[] = $new_path;            if(is_dir($new_path)){                $files = array_merge($files, $this->ergodicDir2($new_path));<br>            }<br>        }<br>        closedir($dir);        return $files;<br>}<br></span>

ディレクトリクラス

<span style="font-size: 14px;">function dirTree(){<br>    if(!is_dir($path)) return [];        $files = [];        $dir_h = dir($path);        while($file = $dir_h->read()){            if($file == '.' || $file == '..') continue;            $new_path = trim($path, '/').'/'.trim($file, '/');            $files[] = $new_path;            if(is_dir($new_path)){                $files = array_merge($files, $this->ergodicDir3($new_path));<br>            }<br>        }        $dir_h->close();        return $files;<br>}<br></span>

イテレータ

<span style="font-size: 14px;">function dirTree(){<br>    if(!is_dir($path)) return [];    $files = [];        $dir = new \DirectoryIterator($path);        foreach ($dir as $key => $file){            if($file->getFilename() == '.' || $file->getFilename() == '..'){                continue;<br>            }            $files[] = $file->getPathname();            if($file->isDir()){                $files = array_merge($files, $this->ergodicDir5($file->getPathname()));<br>            }<br>        }        return $files;<br>}<br></span>

関連推奨事項:

PHPフォルダートラバーサル、画像等比率圧縮

以上がPHPフォルダートラバーサルのいくつかの方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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