Hallo pl,
Ja. Verwende einen Sortier-Callback.
function sortByFolderAndTitle($a, $b)
{
$cmpFolder = ($a['isa'] == 'folder') <=> ($b['isa'] == 'folder')
if ($cmpFolder == 0)
$cmpFolder = $a['title'] <=> $b['title'];
return $cmpFolder;
}
// Oder, nach Anwendung einer Uglifizierung:
function sortByFolderAndTitle($a, $b)
{
return ($f=($a['isa']=='folder')<=>($b['isa']=='folder'))!=0?$f:$a['title']<=>$b['title'];
}
Ach ja. Du verwendest ja ein nicht mehr unterstütztes PHP (alles vor 7.2). Dann musst du den <=>
Operator entsprechend ersetzen, z.B. durch eine spaceShip Funktion.
function spaceShip($a, $b) {
if (PHP_MAJOR_VERSION > 6) die("Replace me with <=> !");
return $a<=$b?$a==$b?0:-1:1;
}
Rolf
--
sumpsi - posui - clusi
sumpsi - posui - clusi