|
|
|
| Привет. Че-то не могу сообразить как отсортировать такой массив
$massiv = array (
[0] => Array
(
[familiya] => Иванов
[imya] => Василий
[otchestvo] => Константинович
[data] => 23.05.05
[positia] => 3
[email] => ivanov@mail.ru
)
[1] => Array
(
[familiya] => Петров
[imya] => Александр
[otchestvo] => Григорьевич
[data] => 13.07.09
[positia] => 1
[email] => petrov@mail.ru
)
[2] => Array
(
[familiya] => Сидоров
[imya] => Генадий
[otchestvo] => Денисович
[data] => 05.11.00
[positia] => 2
[email] => sidorov@yandex.ru
)
);
|
вот такой приблизительно массив надо отсортировать например, по фамилии или по имени, или по другим ключам. Как это сделать? | |
|
|
|
|
|
|
|
для: neokortex
(07.04.2010 в 23:49)
| | usort()
а callback-компаратором можно задать любые правила сортировки. | |
|
|
|
|
|
|
|
для: Trianon
(08.04.2010 в 00:23)
| |
<?php
$mas = array(array("familiya" => "Петров","imya" => "Василий","otchestvo" => "Константинович","data" => "23.05.05 ","positia" => 3,"email" => "ivanov@mail.ru"),
array("familiya" => "Иванов","imya" => "Александр","otchestvo" => "Григорьевич","data" => "13.07.09 ","positia" => 1,"email" => "petrov@mail.ru"),
array("familiya" => "Сидоров","imya" => "Генадий","otchestvo" => "Денисович","data" => "05.11.00","positia" => 2,"email" => "sidorov@yandex.ru"));
function cmp_fam($a, $b) // сортировка по фамилии
{
return strcmp($a["familiya"], $b["familiya"]);
}
function cmp_name($a, $b) // сортировка по имени
{
return strcmp($a["imya"], $b["imya"]);
}
usort($mas, "cmp_name");
echo "<pre>";
print_r($mas);
echo "</pre>";
?>
|
| |
|
|
|