使用 opendir() 按字母顺序对目录列表进行排序
Web 开发中的一个常见任务是显示来自某个目录的文件或目录的排序列表。给定的目录。这可以使用 opendir() 函数来实现。然而,有些用户在按字母顺序对文件进行排序时可能会遇到困难。
要按字母顺序对目录列表进行排序,需要在排序之前将文件读入数组。以下代码演示了这种方法:
<code class="php"><?php $dirFiles = array(); // Open the directory if ($handle = opendir('Images')) { // Read each file while (false !== ($file = readdir($handle))) { // Strip file extensions $crap = array(".jpg", ".jpeg", ".JPG", ".JPEG", ".png", ".PNG", ".gif", ".GIF", ".bmp", ".BMP"); $newstring = str_replace($crap, " ", $file); // Ignore folders, index.php, and Thumbnails if ($file != "." && $file != ".." && $file != "index.php" && $file != "Thumbnails") { // Add the file to the array $dirFiles[] = $file; } } // Close the directory closedir($handle); } // Sort the files alphabetically sort($dirFiles); // Display the sorted list of files foreach ($dirFiles as $file) { echo "<li><a href=\"Images/$file\" class=\"thickbox\" rel=\"gallery\" title=\"$newstring\"><img src=\"Images/Thumbnails/$file\" alt=\"$newstring\" width=\"300\" </a></li>\n"; } ?></code>
在此代码中,文件在排序之前被读入 $dirFiles 数组。 sort() 函数用于按字母顺序对数组进行排序。然后使用循环显示排序后的文件列表。
此外,您可以使用 pathinfo() 函数更通用地处理文件扩展名,从而无需硬编码扩展名数组。
以上是如何在 PHP 中使用 opendir() 按字母顺序对目录列表进行排序?的详细内容。更多信息请关注PHP中文网其他相关文章!