PHPでのディレクトリ内容の読み取り

関数 scandir を使用すると、 ディレクトリの内容を確認し、 その中のファイルとサブディレクトリの名前を 配列として取得することができます。 この関数はパラメータとしてファイルへのパスを受け取ります。

例として、ディレクトリ dir があるとします。 その内容を見てみましょう:

php<?php
  $files = scandir('dir');
  var_dump($files);
?>

結果の配列の中で、関数 scandir は ".." と "." という名前のディレクトリの存在も示します。 技術的には、前者の名前は親ディレクトリへのリンクに対応し、 後者は現在のディレクトリへのリンクに対応します。

これらの名前は結果の配列から取り除いた方が良いでしょう。 これは以下のようにして行います:

php<?php
  $files = scandir('dir');
  $files = array_diff($files, ['..', '.']); 
  var_dump($files);
?>

簡略化することもできます:

php<?php
  $files = array_diff(scandir('dir'), ['..', '.']); 
  var_dump($files);
?>
Задание 1

あなたのサイトのルートにディレクトリ dir があり、 その中に何らかのテキストファイルがあるとします。 これらのファイル名を縦に一覧表示してください。

Задание 2

あなたのサイトのルートにディレクトリ dir があり、 その中に何らかのテキストファイルがあるとします。 これらのファイルをループで処理し、そのテキストをブラウザに表示してください。

Задание 3

あなたのサイトのルートにディレクトリ dir があり、 その中に何らかのテキストファイルがあるとします。 これらのファイルをループで処理し、それぞれを開いて 最後に感嘆符を書き加えてください。