次のように、変更可能な数のファイルを含むディレクトリがあり、各ファイルの最初の行には 1 文字が含まれ、残りのファイル コンテンツには CSV が含まれます。
U
Status4,jwalker,Tech Manual 03264
Status3,jwalker,Status Report 3213
Status4,rmartino,Tech Manual 52002
...
このコードを使用すると、ディレクトリ内のすべてのレポート ファイル名のリストを簡単に取得できます。
<?php
// Open session
session_start();
// Get array of reports from directory
$files = scandir('reports');
$files <= array_pop($files);
$files <= array_shift($files);
$files <= array_shift($files);
// Extract summaries
for ($i=0; $i <= count($files)-1; $i++) {
$summaries[$i] = file($files[$i]);
}
?>
13 行目で file() 関数を使用する理由は、ファイルを便利に配列に分割して、$summaries[3][2] などの特定の行を簡単に参照して 3 行目を取得できるようにするためです。ディレクトリの 4 番目のファイルから (ここでは PHP のデフォルト 0 からカウントしていることを思い出してください)。PHP.net のドキュメントには、file() に渡される文字列として配列を使用しないことについて何も記載されていないため、それを行う方法があると思います。しかし、渡された配列ではなく、定数と文字列しか見つかりませんでした。
誰でもここで何か洞察がありますか?どうもありがとう!