頭を悩ませている質問があります。ディレクトリからすべての画像を一覧表示し、ページに書き込むこの PHP スクリプトがあります。
<?PHP
$directory="photos";
$sortOrder="newestFirst";
$results = array();
$handler = opendir($directory);
while ($file = readdir($handler)) {
if ($file != '.' &&
$file != '..' &&
$file != "robots.txt" &&
$file != ".htaccess") {
$currentModified = filectime($directory."/".$file);
$file_names[] = $file;
$file_dates[] = $currentModified;
}
}
closedir($handler);
//Sort the date array by preferred order
if ($sortOrder == "newestFirst"){
arsort($file_dates);
} else {
asort($file_dates);
}
//Match file_names array to file_dates array
$file_names_Array = array_keys($file_dates);
foreach ($file_names_Array as $idx => $name) $name=$file_names[$name];
$file_dates = array_merge($file_dates);
$i = 0;
//Loop through dates array and then echo the list
foreach ($file_dates as $$file_dates){
$date = $file_dates;
$j = $file_names_Array[$i];
$file = $file_names[$j];
$i++;
echo "<img src=photos/$file>\n";
}
?>
100 個のファイルを含むフォルダーで、一度に 20 個のファイルのみをランダムに一覧表示する、つまり、ページを更新するたびに 20 個のランダムな画像が読み込まれるとしたら、どうすればよいでしょうか?
どうすればできますか?