Найти в Дзене
Xna 4, php,MonoGame, Статьи

Сортировка многомерных массивов в php

Оглавление

Пример:

<?php
$data = array( array('0'=>'Иркутск','1' => 200,),array('0'=>'Москва','1' => 500,),array( '0'=>'Магнитогорск', '1' => 100, ), array( '0'=>'Харьков','1' => 800, ), array( '0'=>'Новгород', '1' => 600, ) );

foreach ($data as $key => $row) {
$distance[$key] = $row['1'];
}

array_multisort($distance, SORT_ASC, $data);
var_dump($data);

?>

Результат:

array(5) { [0]=> array(2) { [0]=> string(12) "Магнитогорск" [1]=> int(100) } [1]=> array(2) { [0]=> string(7) "Иркутск" [1]=> int(200) } [2]=> array(2) { [0]=> string(6) "Москва" [1]=> int(500) } [3]=> array(2) { [0]=> string(8) "Новгород" [1]=> int(600) } [4]=> array(2) { [0]=> string(7) "Харьков" [1]=> int(800) } }

Что получили из данного урока.

1 В первоначальном многомерном массиве заданы города ну и предположим число километров до них и нас попросили отсортировать их от наименьшего к наибольшему.

результатом стал функция array_multisort параметр её SORT_ASC отвечает за принцип сортировки.

2 сортирует по выбранному элементу в массиве тут по числам а если укажу 0 в $row['1']; то будет сортировать по городам хоть большой список массива не проблема все отсортирует в нужном виде SORT_ASC по возрастанию array_multisort сортировка и ее параметры смотри в документации php