日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > php >内容正文

php

java多维数组按照某一列排序,PHP实现二维数组按某列进行排序的方法

發布時間:2023/12/15 php 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java多维数组按照某一列排序,PHP实现二维数组按某列进行排序的方法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

本文實例講述了PHP實現二維數組按某列進行排序的方法。分享給大家供大家參考,具體如下:

/*

* 二維數組 按某列排序

* array_multisort($arr1,$arr2)

* 手冊 例子如下

*

*/

$data[] = array('volume' => 67, 'edition' => 2);

$data[] = array('volume' => 86, 'edition' => 1);

$data[] = array('volume' => 85, 'edition' => 6);

$data[] = array('volume' => 98, 'edition' => 2);

$data[] = array('volume' => 86, 'edition' => 6);

$data[] = array('volume' => 67, 'edition' => 7);

// 取得列的列表

foreach ($data as $key => $row) {

$volume[$key] = $row['volume'];

$edition[$key] = $row['edition'];

}

// 將數據根據 volume 降序排列,根據 edition 升序排列

// 把 $data 作為最后一個參數,以通用鍵排序

array_multisort($volume, SORT_DESC, $edition, SORT_ASC, $data);

/*************************************/

/* 從上面的例子不難看出,array_multisort()函數

* 是將每一個二維數組的列作為 一個參數進行排序

* 來達到整個數組的排序

*/

/*************************************/

function sigcol_arrsort($data,$col,$type=SORT_DESC){

if(is_array($data)){

$i=0;

foreach($data as $k=>$v){

if(key_exists($col,$v)){

$arr[$i] = $v[$col];

$i++;

}else{

continue;

}

}

}else{

return false;

}

array_multisort($arr,$type,$data);

return $data;

}

print_r(sigcol_arrsort($data,'edition',SORT_DESC));

/*說白了 原理就是:

新數組 原二維數組

2 array('volume' => 67, 'edition' => 2);

1 array('volume' => 86, 'edition' => 1);

6 array('volume' => 85, 'edition' => 6);

2 array('volume' => 98, 'edition' => 2);

6 array('volume' => 86, 'edition' => 6);

7 array('volume' => 67, 'edition' => 7);

這兩個數組的每一行都鎖在一起,新數組一旦變動順序,

那么就會連帶每一行的二維數組也跟著變換順序 ,即新數組為參照物

相當于查詢子句中的 order by

*/

運行結果:

Array

(

[0] => Array

(

[volume] => 67

[edition] => 7

)

[1] => Array

(

[volume] => 85

[edition] => 6

)

[2] => Array

(

[volume] => 86

[edition] => 6

)

[3] => Array

(

[volume] => 67

[edition] => 2

)

[4] => Array

(

[volume] => 98

[edition] => 2

)

[5] => Array

(

[volume] => 86

[edition] => 1

)

)

希望本文所述對大家PHP程序設計有所幫助。

總結

以上是生活随笔為你收集整理的java多维数组按照某一列排序,PHP实现二维数组按某列进行排序的方法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。