Сортировать пользовательский многомерный массив

0

У меня есть определенный пользователем многомерный массив, который я пытаюсь сортировать. Я огляделся и сказал только, как сортировать одномерные массивы или ассоциативные массивы с ключами... Итак, если у меня есть следующее...

$treasure = array( array("Banana", "Yellow"), 
    array("Apple", "red"), 
    array("Pear", "green"), 
    array("Peach", "orange"), 
    array("Orange", "orange"), 
    array("Kiwi", "green"));

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

$treasure = array( array("Apple", "red"),
    array("Banana", "Yellow"), 
    array("Kiwi", "green")
    array("Orange", "orange"),
    array("Peach", "orange"),  
    array("Pear", "green"), 
    );
  • 3
    array_multisort($treasure); print_r($treasure); ? Об этом много раз спрашивали!
  • 0
    array_multisort не работает. Я проверил много страниц, прежде чем отправлять этот вопрос.
Показать ещё 1 комментарий
Теги:
arrays
sorting

2 ответа

1
Лучший ответ

Вы можете использовать usort:

<?php
function cmp($a, $b)
{
    return strcmp(reset($a), reset($b));
}

usort($treasure , "cmp");
0

Используйте usort() и предоставите собственный компаратор.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню