Zwei kleine Verbesserungen: Es empfiehlt sich vorher noch $files als array() zu initialisieren um ein paar Fehler bei strenger Fehlersensibilität und Sicherheitslücken zu vermeiden. Außerdem muss man nicht bei jedem Schleifendurchlauf sort() machen. Es reicht auch einmal nach der Schleife. Im Endeffekt heißt das: