dein problem ist, daß du deine titel und dateinamen in 2 unterschiedlichen arrays speicherst. wenn du die dann seperat sortierst, passt natürlich titel[N] nicht mehr zu dateiname[N]
also eine möglichkeit:
statt
Code:
$sortdatei[] = $datei;
$sorttitel[] = $titel[1];
lieber
Code:
if ($titel[1]) {
$toSort[] = array ('file' => $datei, 'title' => $titel[1]);
}
else {
die ("can't parse $datei");
}
dann nach der while-schleife
statt
2 sorts
ein usort:
Code:
// php >= 5.3
usort ($toSort, function ($a, $b) { return strcmp ($a['title'], $b['title']); } );
foreach ($toSort as $t) {
...
}
bzw.
Code:
// php < 5.3
function bla ($a, $b) {
return strcmp ($a['title'], $b['title']);
}
usort ($toSort, 'bla');
foreach ($toSort as $t) {
...
}