本文实例讲述了PHP实现数组根据某个单元字段排序操作。分享给大家供大家参考,具体如下:
如题,给出一个PHP数组,数组结构如下:
$arr = array(
array(
'name'=>'sadas',
'norder'=>1
),
array(
'name'=>'sadas',
'norder'=>11
),
array(
'name'=>'sadas',
'norder'=>123
),
array(
'name'=>'sadas',
'norder'=>11
)
);
需要是需要按照norder从大到小的顺序,重新排列$arr数组的顺序。
可以使用array_multisort函数来帮助排序:
function p($arr){
echo ""; print_r($arr); echo ""; } $arr = array( array( 'name'=>'sadas', 'norder'=>1 ), array( 'name'=>'sadas', 'norder'=>11 ), array( 'name'=>'sadas', 'norder'=>123 ), array( 'name'=>'sadas', 'norder'=>11 ) ); $flag = array(); foreach($arr as $v){ $flag[] = $v['norder']; } array_multisort($flag, SORT_DESC, $arr); p($arr);
运行结果:
Array
(
[0] => Array
(
[name] => sadas
[norder] => 123
)
[1] => Array
(
[name] => sadas
[norder] => 11
)
[2] => Array
(
[name] => sadas
[norder] => 11
)
[3] => Array
(
[name] => sadas
[norder] => 1
)
)