//提供一個(gè)方法
成都創(chuàng)新互聯(lián)專(zhuān)注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于成都做網(wǎng)站、成都網(wǎng)站制作、成都外貿(mào)網(wǎng)站建設(shè)、綏濱網(wǎng)絡(luò)推廣、小程序開(kāi)發(fā)、綏濱網(wǎng)絡(luò)營(yíng)銷(xiāo)、綏濱企業(yè)策劃、綏濱品牌公關(guān)、搜索引擎seo、人物專(zhuān)訪、企業(yè)宣傳片、企業(yè)代運(yùn)營(yíng)等,從售前售中售后,我們都將竭誠(chéng)為您服務(wù),您的肯定,是我們最大的嘉獎(jiǎng);成都創(chuàng)新互聯(lián)為所有大學(xué)生創(chuàng)業(yè)者提供綏濱建站搭建服務(wù),24小時(shí)服務(wù)熱線:028-86922220,官方網(wǎng)址:muchs.cn
class?lib_BaseUtils{
static?$s_field;
static?$s_sc;
/**
?*?php?二維數(shù)組按鍵值排序
?*?@param?array?$a?需要排序的數(shù)組
?*?@param?string?$sort?排序的鍵值
?*?@param?string?$d?默認(rèn)ASC,帶上參后為DESC
?*?@return?boolean
?*/
static?function?array_sort($a,?$sort,?$d='')?{
self::$s_field?=?$sort;
self::$s_sc?=?$d;
usort($a,?array("lib_BaseUtils","array_sort_callback"));
return?$a;
}
//排序回調(diào)方法?請(qǐng)勿刪除
static?function?array_sort_callback($a,?$b)?{
$s_a?=?self::$s_sc???$b?:?$a;
$s_b?=?self::$s_sc???$a?:?$b;
$field?=?self::$s_field;
switch?(true){
case?(is_string($s_a[$field])??is_string($s_b[$field])):
return?strcmp($s_a[$field],?$s_b[$field]);
break;
default:
if($s_a[$field]==?$s_b[$field]){
return?0;
}else{
return?$s_a[$field]$s_b[$field]?-1:1;
}?
}
}
}
調(diào)用方法
lib_BaseUtils::array_sort($lists, 'app_down','desc');
$num=$arr[$a]-18按$num排序其實(shí)就是按$arr[$a]來(lái)排,只需在循環(huán)前對(duì)$arr排序就行了。出來(lái)的結(jié)果自然是按 $num排序
?php
$arr=array(30,15,40,38);
rsort($arr);
for($a=0; $a4; $a++){
$num=$arr[$a]-18;
if($num0){
$arr_1=array(array("$arr[$a]","$num"));
$num_1 = array();
foreach ($arr_1 as $arr_2) {
$num_1[] = $arr_2[1];
}
array_multisort( $num_1,SORT_DESC , $arr_1);
print_r($arr_1);
}
}
?
你可以使用usort這個(gè)函數(shù)進(jìn)行對(duì)$a['list']進(jìn)行處理
usort($a['list'],function($a,$b){
if($a['app_down']?==?$b['app_down'])return?0;
return?$a['app_down']$b['app_down']???1?:?-1;
//如果發(fā)現(xiàn)結(jié)果是升序,1和-1對(duì)換下位置,記不太清了
});
1 需要排序的數(shù)組如下:
$array = array(
array('name'='手機(jī)','brand'='諾基亞','price'=1050),
array('name'='筆記本電腦','brand'='lenovo','price'=4300),
array('name'='剃須刀','brand'='飛利浦','price'=3100),
array('name'='跑步機(jī)','brand'='三和松石','price'=4900),
array('name'='手表','brand'='卡西歐','price'=960),
array('name'='液晶電視','brand'='索尼','price'=6299),
array('name'='激光打印機(jī)','brand'='惠普','price'=1200)
);
2 排序的函數(shù):
function arr_sort($array,$key,$order="asc"){//asc是升序 desc是降序
$arr_nums=$arr=array();
foreach($array as $k=$v){
$arr_nums[$k]=$v[$key];
}
if($order=='asc'){
asort($arr_nums);
}else{
arsort($arr_nums);
}
foreach($arr_nums as $k=$v){
$arr[$k]=$array[$k];
}
return $arr;
}
3 調(diào)用方式:
arr_sort($array,'price');
名稱(chēng)欄目:二維數(shù)據(jù)排序php 二維數(shù)據(jù)排序
當(dāng)前地址:http://muchs.cn/article8/doegoip.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供動(dòng)態(tài)網(wǎng)站、商城網(wǎng)站、虛擬主機(jī)、網(wǎng)站導(dǎo)航、微信公眾號(hào)、品牌網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)