Как я могу это сделать? Например, у меня $array, где я использую $array['name'] и $array['value']. Могу ли я отсортировать $array по одному из атрибутов и выбрать ASC / DESC?
$array
$array['name']
$array['value']
Вы можете использовать usort:
usort
function my_array_sorter($a, $b) { return strcmp($a['name'], $b['name']); } usort($my_array, 'my_array_sorter');
Если вы имеете в виду, что используете ассоциативные массивы:
arsort($array)
asort сортирует значения, arsort в обратном порядке.
asort
arsort
ksort сортировка ключей, krsort в обратном порядке.
ksort
krsort
Чтобы отсортировать ассоциативный массив по ключу массива, вы можете использовать функцию ksort () следующим образом:
<?php $narray["IBM"]="International Business Machines"; $narray["MS"]="Microsoft"; $narray["CA"]="Computer Associated"; $narray["WHO"]="World Health Organization"; $narray["UK"]="United Kingdon"; $narray["BA"]="Something Random"; ksort($narray); foreach($narray as $key => $value) { print $key . " = " . $value . "<br />"; } ?>
Аналогичным образом вы можете отсортировать ассоциативный массив по ключу в порядке возрастания с помощью функции krsort ().
Источник: http://www.webcheatsheet.com/PHP/sorting_array.php