ホームページ > バックエンド開発 > PHPチュートリアル > PHPでディレクトリ内のファイル名を取得する方法(概要共有)

PHPでディレクトリ内のファイル名を取得する方法(概要共有)

WBOY
リリース: 2023-04-10 19:10:02
オリジナル
7091 人が閲覧しました

前回の記事「PHPファイル処理におけるディレクトリの開閉に関する知識まとめ」では、PHPにおけるディレクトリの開閉方法について詳しく紹介しましたので、引き続き見ていきましょう。 PHP でディレクトリ内のファイルに関する関連知識を取得する方法を見てみましょう。その中には、前回の記事でディレクトリのオープンとクローズに関する知識も含まれています。皆様のお役に立てれば幸いです。

PHPでディレクトリ内のファイル名を取得する方法(概要共有)

PHP でディレクトリを開いたり閉じたりする方法を学習しました。ディレクトリを閉じる前に、ディレクトリを操作します。よく使用される操作の 1 つは、コンテンツを取得することです。ディレクトリのファイルとフォルダー。

つまり、ディレクトリ内のファイルを取得する方法を知りたい場合は、まずディレクトリを開いて閉じる必要があるため、opendir() 関数と closedir( )関数をまだ理解していない場合は、上のリンクをクリックして学習してください。 PHPでディレクトリ内のファイルを取得する方法を見てみましょう。

PHP では、readdir() 関数と scandir() 関数を使用して、ディレクトリ内のファイル名を取得する操作を完了できます。

<strong>#readdir()<span style="font-size: 20px;"></span></strong>関数はファイル内の次のファイル名を取得します

readdir() この関数は単純な操作です。関数が正常に実行されると、opendir()# を通じてディレクトリを開くことができるため、単純です。 ## function ファイル名またはディレクトリ名。関数が正常に実行されなかった場合、返される結果は flase です。
readdir() 関数の基本的な構文形式は次のとおりです:

readdir([resource $dir_handle])
ログイン後にコピー

$dir_handle

はオプションのパラメーターであることに注意してください。入力されている場合、opendir() 関数を通じて開かれたディレクトリ パラメータであることを意味します。 次に、例を通して readdir() 関数の使用法を見てみましょう。例は次のとおりです:

<?php
    $dir = &#39;D:&#39;;
    if(is_dir($dir)){
        $info = opendir($dir);
        $file = readdir($info);
        echo $file.&#39;<br>&#39;;
        closedir($info);
    }
?>
ログイン後にコピー

出力結果:


PHPでディレクトリ内のファイル名を取得する方法(概要共有)上記例のこの書き方は一般的には使用されませんが、通常、readdir()関数で全ディレクトリのファイルを取得したい場合は、

関数で取得する必要があります。 while

ループの例は次のとおりです:<div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">&lt;?php $dir = &amp;#39;D:&amp;#39;; if(is_dir($dir)){ $info = opendir($dir); while (($file = readdir($info)) !== false) { echo $file.&amp;#39;&lt;br&gt;&amp;#39;; } closedir($info); } ?&gt;</pre><div class="contentsignin">ログイン後にコピー</div></div>出力結果:


PHPでディレクトリ内のファイル名を取得する方法(概要共有)これで、 readdir() 関数と while ループを通じてターゲット ディレクトリ内のファイル名を取得します。これは readdir() 関数の応用です。次に、別のメソッドである

scandir()

関数を見てみましょう。

#scandir()<strong><span style="max-width:90%"></span></strong>関数、配列形式でディレクトリ ファイル名を返します readdir()

関数はターゲット ディレクトリ内のファイル名を取得できることを上で学びました。また、while ループを使用すると、ディレクトリ内のファイル名またはディレクトリ名を簡単かつ直接に取得できます。 。次に説明する scandir() 関数は、readdir() 関数とは多少異なります。

    readdir()
  • 関数は一度に 1 つのファイル名しか返せませんが、

    scandir() 関数はすべてのファイルを返すことができます。正常に実行された後のターゲット ディレクトリ ファイル名とディレクトリ名;

  • readdir
  • 返される結果は、直接ファイル名

    scandir## です。 #返される結果はファイル名でもありますが、配列形式で返される結果です;

    readdir
  • 関数が正常に実行されなかった場合、戻り結果は false、
  • scandir

    関数が正常に実行されなかった場合、戻り値も flase ですが、エラー メッセージも表示されます。 scandir() 関数の基本的な構文を見てみましょう。例は次のとおりです:

  • scandir(string $directory[, int $sorting_order[, resource $context]])
    ログイン後にコピー
注意する必要があるのは次のとおりです。

$directory
は、読み取るディレクトリを示します。

$sorting_order

のパラメータが SCANDIR_SORT_DESCENDING または 1 に設定されている場合、返される結果は次のようになります。ファイル名とそのソート順はアルファベットの降順です。 $sorting_order パラメーターが SCANDIR_SORT_NONE に設定されている場合、返される結果は並べ替えられていない結果であり、このパラメーターはオプションのパラメーターです。 次に、例を通して scandir() 関数の応用を見てみましょう。例は次のとおりです:

<?php
    $dir = &#39;D:\phpstudy_pro\WWW&#39;;
    if(is_dir($dir)){
        $arr1 = scandir($dir);
        $arr2 = scandir($dir, 1);
    }
    echo "<pre class="brush:php;toolbar:false">";
    print_r($arr1);
    print_r($arr2);
?>
ログイン後にコピー
上の例では、目的は scandir を使用することです。 () 関数を使用して、ディレクトリ パスを " D:\phpstudy_pro\WWW" ディレクトリとして取得し、さまざまなパラメータを使用してさまざまなアルファベット順の配置を実現します。出力結果は次のとおりです。


上記の例から、 scandir() 関数はターゲット ディレクトリ内のファイル名を配列形式で返すことができ、返される結果の順序は、関数の $sorting_order パラメーター。

ご興味がございましたら、「PHP ビデオ チュートリアル 」および「PHP ファイル処理におけるディレクトリのクローズとオープンに関する知識の概要 」をクリックして、PHP の知識についてさらに詳しくご覧ください。

以上がPHPでディレクトリ内のファイル名を取得する方法(概要共有)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート