Php 读取子目录中的图像并按字母顺序排序?
我发现这段代码()用于显示目录和子目录中的所有图像,工作正常,但我试图实现php的sort()函数,但不起作用:Php 读取子目录中的图像并按字母顺序排序?,php,sorting,readdir,Php,Sorting,Readdir,我发现这段代码()用于显示目录和子目录中的所有图像,工作正常,但我试图实现php的sort()函数,但不起作用: function ListFiles($dir) { if($dh = opendir($dir)) { $files = Array(); $inner_files = Array(); while($file = readdir($dh)) { if($
function ListFiles($dir) {
if($dh = opendir($dir)) {
$files = Array();
$inner_files = Array();
while($file = readdir($dh)) {
if($file != "." && $file != ".." && $file[0] != '.') {
if(is_dir($dir . "/" . $file)) {
$inner_files = ListFiles($dir . "/" . $file);
if(is_array($inner_files)) $files = array_merge($files, $inner_files);
} else {
array_push($files, $dir . "/" . $file);
}
}
}
closedir($dh);
// -- SORTING the FILES --
sort($files);
return $files;
}
}
foreach (ListFiles('works/'.$service_get_var.'/') as $key=>$file){
echo "<li><img src=\"$file\"/></li>";
}
函数列表文件($dir){
如果($dh=opendir($dir)){
$files=Array();
$internal_files=Array();
而($file=readdir($dh)){
如果($file!=“&&&$file!=”。“&&&&$file[0]!=”){
if(is_dir($dir./“$file)){
$internal_files=ListFiles($dir./“$file);
如果(is_array($inner_files))$files=array_merge($files,$inner_files);
}否则{
数组_push($files,$dir./“$file);
}
}
}
closedir($dh);
//--整理文件--
排序($文件);
返回$files;
}
}
foreach(ListFiles('works/'.$service\u get\u var.'/')作为$key=>$file){
回声“”;
}
当我测试这个时,我看不到任何图像,sort()的用法是否正确?。非常感谢。在阅读完所有内容后进行排序,而不是以递归步骤进行排序
function ListFiles($dir) {
if($dh = opendir($dir)) {
$files = Array();
$inner_files = Array();
while($file = readdir($dh)) {
if($file != "." && $file != ".." && $file[0] != '.') {
if(is_dir($dir . "/" . $file)) {
$inner_files = ListFiles($dir . "/" . $file);
if(is_array($inner_files)) $files = array_merge($files, $inner_files);
} else {
array_push($files, $dir . "/" . $file);
}
}
}
closedir($dh);
// -- SORTING the FILES --
//sort($files);
return $files;
}
}
$list = ListFiles('works/'.$service_get_var.'/');
sort($list);
foreach ($list as $key=>$file){
echo "<li><img src=\"$file\"/></li>";
}
函数列表文件($dir){
如果($dh=opendir($dir)){
$files=Array();
$internal_files=Array();
而($file=readdir($dh)){
如果($file!=“&&&$file!=”。“&&&&$file[0]!=”){
if(is_dir($dir./“$file)){
$internal_files=ListFiles($dir./“$file);
如果(is_array($inner_files))$files=array_merge($files,$inner_files);
}否则{
数组_push($files,$dir./“$file);
}
}
}
closedir($dh);
//--整理文件--
//排序($文件);
返回$files;
}
}
$list=ListFiles('works/.$service\u get\u var./');
排序($列表);
foreach($key=>$file){
回声“”;
}