Сортировка многомерных массивов по ключу
Распространенной задачей при работе с многомерными массивами является необходимость отсортировать их по определенному ключу. Например, рассмотрим следующий массив:
Array ( [0] => Array ( [iid] => 1 [invitee] => 174 [nid] => 324343 [showtime] => 2010-05-09 15:15:00 [location] => 13 [status] => 1 [created] => 2010-05-09 15:05:00 [updated] => 2010-05-09 16:24:00 ) [1] => Array ( [iid] => 1 [invitee] => 220 [nid] => 21232 [showtime] => 2010-05-09 15:15:00 [location] => 12 [status] => 0 [created] => 2010-05-10 18:11:00 [updated] => 2010-05-10 18:11:00 ))
Чтобы отсортировать этот массив по ключу [status], вы можете использовать функцию usort вместе с пользовательской функцией сравнения:
// Define a comparison function function cmp($a, $b) { if ($a['status'] == $b['status']) { return 0; } return ($a['status']Определяя функцию cmp, вы указываете, как следует сравнивать элементы во время сортировки. В этом случае он сравнивает ключ [status] двух элементов, возвращая -1, если $a['status'] меньше $b['status'], 0, если они равны, и 1 в противном случае.
Функция usort упорядочивает элементы массива в порядке возрастания на основе выходных данных функции сравнения. Это позволяет отсортировать многомерный массив по нужному ключу, в данном случае [статус].
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3