блоками вида и вида asort, а DirectoryIterator не будут блок, несмотря на обеспечивать одевать-как доступ (например через foreach). Попытайтесь создать ассоциативный блок от результатов DirectoryIterator и сортировать то, что-то как:
$dircontents = блок ();
foreach ($subdir как $filesInfo) {
$dircontents [$filesInfo->getFilename ()] = $filesInfo;
}
вид ($dircontents);
foreach ($dircontents как => $filesInfo $filename) {
…
}