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

Как сортировать вложенный массив по возрастанию?

Первый вложенный массив строк в массиве $str сортируется как задумано, то есть в алфавитном порядке.
Но второй вложенный массив цифр по идее должен сортироваться по возрастанию, то есть 2,3,4,5,6
Но этого не происходит, как это исправить?

$str = [

["а", "в", "б", "д", "г"],
[2,5,6,3,4],

];


array_multisort($str[0], SORT_STRING, $str[1],  SORT_ASC);

echo implode(',', $str[0])."<br>";
echo implode(',', $str[1]);
  • Вопрос задан
  • 73 просмотра
Подписаться 1 Простой Комментировать
Решения вопроса 1
nokimaro
@nokimaro
Меня невозможно остановить, если я смогу начать.
array_multisort если внимательно почитаете документацию в вашем случае работает не так как вы ожидаете
используйте просто две отдельных явных сортировки

<?php
$str = [
    ["а", "в", "б", "д", "г"],
    [2,5,6,3,4],
];

natsort($str[0]);
natsort($str[1]);

echo implode(',', $str[0])."<br>";
echo implode(',', $str[1]);
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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