Всем привет! Есть ассоциативный массив, у некоторых элементов есть дочерний массив.. Моя задача - отсортировать массив так, чтобы все элементы без дочернего массива были вверху, плюс к тому чтобы они сортировались по увеличению id.. Вот моя функция сортировки
private function mysortfunc($a, $b)
{
if (isset($a['child']) && !isset($b['child']))
return 1;
else if (isset($b['child']) && !isset($a['child']))
return -1;
else
return 0;
}
usort($sorted_menu, 'mysortfunc');
Все бы ничего, вот только верхние элементы отсортированны не по id, и выходит нечто вроде:
- Музыка (id=2)
- Другое (id=3)
- Книги (id=1)
- Конфеты (id=6)
- Мандарины (id=5)