RecursiveIterator を使用します。これが設計されたものです。SPLHeap を拡張する sortedIterator という名前のイテレータを追加して、dir の変更時刻である getMTime() で並べ替えました。
$path をディレクトリへのフル パスに変更します。
$path = '.';
class sortedIterator extends SplHeap
{
public function __construct(Iterator $iterator)
{
foreach ($iterator as $item) {
$this->insert($item);
}
}
public function compare($b,$a)
{
return strcmp($a->getMTime(), $b->getMTime());
}
}
$recursive = new RecursiveDirectoryIterator($path);
$sortByTime = new sortedIterator($recursive);
$i = 0;
foreach ($sortByTime as $file) {
if($file->isDir()){
$dirs[] = $file->getFilename();
if($i++ == 9){
break;
}
}
}
print_r(implode("<br />", $dirs));
編集、Created Time が必要な場合は、getMTime を getCTime に変更します。