Задать вопрос
@nailpaw

Как отсортировать многомерный массив в php?

Есть массив AR, внутри которого 5 других массивов вида (ид = 1, тайтл = ..., текст = ...., автор)

Есть ли функция в php >5 версии, чтобы отсортировать весь массив по значению ключа тайтл во внутренних массивах?
Читал про мультисортировку, но не очень понял, как его применить на моем примере.

То есть я хочу, чтобы у меня получился новый массив, где внутренние массивы отсортированы по значению ключа

Для наглядности AR(
0 => (ид = 1, тайтл = ..., текст = 2...., автор..)
1 => (ид = 2, тайтл = ..., текст = 4...., автор..)
2 => (ид = 3, тайтл = ..., текст = 1...., автор..) )

Должно получиться (сортируем по значению ключа текст)
AR(
2 => (ид = 3, тайтл = ..., текст = 1...., автор..)
0 => (ид = 1, тайтл = ..., текст = 2...., автор..)
1 => (ид = 2, тайтл = ..., текст = 4...., автор..) )
  • Вопрос задан
  • 485 просмотров
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 1
nokimaro
@nokimaro
Меня невозможно остановить, если я смогу начать.
$array = AscOrderArray($array, 'title');

function DescOrderArray($array, $field)
{
    usort($array, function ($b, $a) use ($field) {
        return strnatcmp($a[$field], $b[$field]);
    });

    return $array;
}

function AscOrderArray($array, $field)
{
    usort($array, function ($a, $b) use ($field) {
        return strnatcmp($a[$field], $b[$field]);
    });

    return $array;
}


https://3v4l.org/VOpiA
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы