龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > web编程 > php编程 >

对二维数组指定项排序

时间:2014-07-22 14:51来源: 作者: 点击:
分享到:
p /p

 


<?php
/*
$array_name:传入的数组;
$row_id:数组想排序的项;
$order_type:排序的方式,ASC或者DESC;
*/
 function array_sort($array_name,$row_id,$order_type){
 	$array_temp=array();
 	foreach($array_name as $key=>$value){//循环一层;
 		$array_temp[$key]=$value[$row_id];//新建一个一维的数组,索引值用二维数组的索引值;值为二维数组要比较的项目的值;
 	}
 	if($order_type==="ASC"){
 		asort($array_temp);
 	}else{
 		arsort($array_temp);
 	}
 	$result_array=array();
 	foreach($array_temp as $key=>$value){//对进行筛选过的数组遍历;
 		$result_array[]=$array_name[$key];//新建一个结果数组,将原来传入的数组改变键值顺序后赋值给结果数组(原来数组不变);
 	}
 	return $result_array;
 }
//以下是测试
 $arr=array(array('num'=>7,'value'=>4),
 			array('num'=>3,'value'=>45),
 			array('num'=>38,'value'=>27));
 $sortarr=array_sort($arr,'value','ASC');
 print_r($sortarr);
?>
精彩图集

赞助商链接