ホームページ  >  に質問  >  本文

PHPを使用してディレクトリ内のすべてのフォルダーのサブフォルダーとファイルを一覧表示します

<p>phpを使用してディレクトリ内のすべてのフォルダー、サブフォルダー、ファイルを一覧表示する解決策を教えてください。私のフォルダー構造は次のようになります: </p> <pre class="brush:php;toolbar:false;">メインディレクトリ ディレクトリ1 サブディレクトリ1 ファイル1 ファイル2 サブディレクトリ2 ファイル3 ファイル4 ディレクトリ2 サブディレクトリ3 ファイル5 ファイル6 サブディレクトリ4 ファイル7 ファイル8</pre> <p>各フォルダー内のすべてのファイルのリストを取得したいと考えています。 </p> <p><strong>phpにシェルスクリプトコマンドはありますか? </strong></p>
P粉891237912P粉891237912389日前470

全員に返信(2)返信します

  • P粉738346380

    P粉7383463802023-08-28 10:34:42

    フォルダー構造を表示する非常に簡単な方法は、RecursiveTreeIterator クラス (PHP 5 >= 5.3.0、PHP 7) を使用し、ASCII グラフィカル ツリーを生成することです。

    リーリー

    http://php.net/manual/en/class.recursivetreeiterator.php< /a>

    また、RecursiveTreeIterator::setPrefixPart を使用してプレフィックスを変更することで、ツリーの ASCII 表現を制御することもできます (例: $it->setPrefixPart(RecursiveTreeIterator::PREFIX_LEFT, "| ");

    返事
    0
  • P粉482108310

    P粉4821083102023-08-28 00:51:33

    function listFolderFiles($dir){
        $ffs = scandir($dir);
    
        unset($ffs[array_search('.', $ffs, true)]);
        unset($ffs[array_search('..', $ffs, true)]);
    
        // prevent empty ordered elements
        if (count($ffs) < 1)
            return;
    
        echo '<ol>';
        foreach($ffs as $ff){
            echo '<li>'.$ff;
            if(is_dir($dir.'/'.$ff)) listFolderFiles($dir.'/'.$ff);
            echo '</li>';
        }
        echo '</ol>';
    }
    
    listFolderFiles('Main Dir');
    

    返事
    0
  • キャンセル返事