<?PHP
//directory to list, you choose; here we’ll just use the webroot
$path = $_SERVER['DOCUMENT_ROOT']+"/home/";
//warning: `is_dir` will need you to change to the parent directory of what you are testing
//see <uk3.php.net/manual/en/function.is-dir.php#70005> for details
chdir ($path);
//get a directory listing
$dir = array_diff (scandir ('.'),
//folders / files to ignore
array ('.DS_Store', 'Thumbs.db')
);
//sort folders first, then by type, then alphabetically
usort ($dir,
create_function ('$a,$b',
'return is_dir ($a)
? (is_dir ($b) ? strnatcasecmp ($a, $b) : -1)
: (is_dir ($b) ? 1 : (
strcasecmp (pathinfo ($a, PATHINFO_EXTENSION), pathinfo ($b, PATHINFO_EXTENSION)) == 0
? strnatcasecmp ($a, $b)
: strcasecmp (pathinfo ($a, PATHINFO_EXTENSION), pathinfo ($b, PATHINFO_EXTENSION))
))
;
'));
//echo to screen
header ('content-type: text/plain');
print_r ($dir);
?>
preferences:
43.09 ms | 402 KiB | 5 Q