phpは2 D配列の要素値でソートされます
PHP 2 D配列ソート関数
PHP 1次元配列のソートはsort(),asort(),arsort()などの関数を用いることができるが,PHP 2次元配列のソートにはカスタマイズが必要である.
次の関数は、指定したキー値に従って、指定した2 D配列を並べ替えます.まず、関数定義を参照してください.
2 D配列は、指定したキー値でソートするか、昇順または降順のソート方法(デフォルトは昇順)を指定できます.使用例:
上は$arrayという2次元配列を「price」に従って低いものから高いものに並べ替えたものです.
出力結果:(略).
詳細:http://www.cnblogs.com/tjmsz/archive/2011/11/10/2244231.html
PHP 1次元配列のソートはsort(),asort(),arsort()などの関数を用いることができるが,PHP 2次元配列のソートにはカスタマイズが必要である.
次の関数は、指定したキー値に従って、指定した2 D配列を並べ替えます.まず、関数定義を参照してください.
01.
function
array_sort(
$arr
,
$keys
,
$type
=
'asc'
){
02.
$keysvalue
=
$new_array
=
array
();
03.
foreach
(
$arr
as
$k
=>
$v
){
04.
$keysvalue
[
$k
] =
$v
[
$keys
];
05.
}
06.
if
(
$type
==
'asc'
){
07.
asort(
$keysvalue
);
08.
}
else
{
09.
arsort(
$keysvalue
);
10.
}
11.
reset(
$keysvalue
);
12.
foreach
(
$keysvalue
as
$k
=>
$v
){
13.
$new_array
[
$k
] =
$arr
[
$k
];
14.
}
15.
return
$new_array
;
16.
}
2 D配列は、指定したキー値でソートするか、昇順または降順のソート方法(デフォルトは昇順)を指定できます.使用例:
01.
$array
=
array
(
02.
array
(
'name'
=>
' '
,
'brand'
=>
' '
,
'price'
=>1050),
03.
array
(
'name'
=>
' '
,
'brand'
=>
'lenovo'
,
'price'
=>4300),
04.
array
(
'name'
=>
' '
,
'brand'
=>
' '
,
'price'
=>3100),
05.
array
(
'name'
=>
' '
,
'brand'
=>
' '
,
'price'
=>4900),
06.
array
(
'name'
=>
' '
,
'brand'
=>
' '
,
'price'
=>960),
07.
array
(
'name'
=>
' '
,
'brand'
=>
' '
,
'price'
=>6299),
08.
array
(
'name'
=>
' '
,
'brand'
=>
' '
,
'price'
=>1200)
09.
);
10.
11.
$ShoppingList
= array_sort(
$array
,
'price'
);
12.
print_r(
$ShoppingList
);
上は$arrayという2次元配列を「price」に従って低いものから高いものに並べ替えたものです.
出力結果:(略).
詳細:http://www.cnblogs.com/tjmsz/archive/2011/11/10/2244231.html