Сортировка вот такого массива...

TRL

Новичок
Сортировка вот такого массива...

PHP:
Array
(
    [comments] => Array
        (
            [name] => Комментарии
            [url] => comments/
            [sort] => 1
            [main] => 1
        )

    [blocks] => Array
        (
            [name] => Инфомационные блоки
            [url] => blocks/
            [sort] => 2
            [main] => 1
            [submenu] => Array
                (
                    [1] => Array
                        (
                            [name] => Привязка блоков
                            [url] => blocks/grid/
                            [sort] => 2
                            [main] => 0
                        )

                    [2] => Array
                        (
                            [name] => Добавить блок
                            [url] => blocks/add/
                            [sort] => 2
                            [main] => 0
                        )

                )

        )

    [pages] => Array
        (
            [name] => Статичные страницы
            [url] => pages/
            [sort] => 3
            [main] => 1
            [submenu] => Array
                (
                    [5] => Array
                        (
                            [name] => Добавить страницу
                            [url] => pages/add/
                            [sort] => 3
                            [main] => 0
                        )

                )

        )

)
Помогите отсортировать массив по двум критериям: [sort] и [name]
Я так пологаю нужно пользовтаься функцией uksort()

Только вот что-то не пойму как єто всё работает...
 

TRL

Новичок
типа спс... я и не знал о существовании такового... :D

1 там есть примеры сортировки массивлво типа KEY => VALUE
а не KEY => ARRAY => KEY => VALUE

я думаю они отличаются ;)

Нуу?? Может кто ещё на поиск даст ссылку? :)))))
на форуме нет ничгео что бы я мог применить.. к сожалению.. ибо не писал бы и не ждал бы...

Сим! Мне всё не понятно...

В пользовательскую функцию прихдят данние:
pages, blocks...
и тчо с ними там делается? Сравнения идут. .чего с чем?

pages и blocks? ЧТо здесь сравнивать можно? Ну возвращает результат.. и что дальше функция с ним делает?

Кстати это единственное, что мне не было понятно никогда и сейчас по сей день не понятно.. разбяснения никакого.. сортирует.. сравнить.. как обезьяна скопировта и вставить - так не интересно....

да и в этом случае не подходит тот пример...
 

faost

Новичок
uksort сортирует по ключам, но судя по сообщению, нужно сортировать по значениям, или нет?
 

TRL

Новичок
да нужно отсортировать по значениям...

т.е. ключ sort имеет значение которое должно применяться при сортировке...

При том сортировка только по єтому значению должна быть, а не по всем... значениям масива... :(

Блин... всё работа застряла на этой сортировке... никогда не любил такие массивы.. самое паршиваое дело :)) для сортировки...
 

SiMM

Новичок
> uksort сортирует по ключам, но судя по сообщению, нужно сортировать по значениям, или нет?
Кстати, да, не обратил внимания, [m]uasort[/m]

> разбяснения никакого..
Ну это уже клевета и наглая ложь. Из мануала:
Функция cmp_function должна принимать два параметра, которым будут присвоены значения двух ключей array . Функция, используемая для сравнения, должна возвращать целое число, меньшее, равное или большее нуля, если первый параметр считается меньше, равен или больше второго.
Этого более чем достаточно, чтобы понять, что к чему.
 
Сверху