У меня ОСНОВНЫЕ проблемы usort()! :(Так что в основном я хочу отсортировать свой массив по их значениям. Мне бы хотелось, чтобы значения отображались в следующем порядке: Platinum, Gold, Silver, Bronze, Complete, None, Uncomplete. Теперь я могу сортировать их хорошо, но я бы хотел, чтобы сохранить их ключ (это возможно?) вот мой код:.?!Упорядочить без замены ключей PHP
function compareMedals($a, $b) {
$aMap = array(1 => 'Platinum', 2 => 'Gold', 3 => 'Silver', 4 => 'Bronze', 5 => 'Complete', 6 => 'None', 7 => 'Uncomplete');
$aValues = array(1, 2, 3, 4, 5, 6, 7);
$a = str_ireplace($aMap, $aValues, $a);
$b = str_ireplace($aMap, $aValues, $b);
return $a - $b;
}
usort($list, 'compareMedals');
Итак, можно сортировать их, сохраняя при этом свои ключи Спасибо :)
EDIT
Массив:
$array = array("post1" => 'Platinum', "Post2" => "Bronze, "Post3" = > Gold)
Должен ли выход:
"Post1" => 'Platinum',
"Post3" => 'Gold',
"Post2" => 'Bronze'
Но он выводит это:
"0" => 'Platinum',
"1" => 'Gold',
"2" => 'Bronze'
Было бы более понятным, если бы вы описали, что вы получаете сейчас (а затем и отличие от желаемого результата). –