首頁 > php教程 > php手册 > PHP多維數組根據其中一個欄位的值排序

PHP多維數組根據其中一個欄位的值排序

WBOY
發布: 2016-09-28 08:38:23
原創
1255 人瀏覽過

平時簡單的一維數組或簡單的數組排序這裡就不多作介紹,這裡主要是針對平時做項目中的可能遇到的情況,根據多維數組中的其中一個排序。
用到的php函數是:array_multisort.

思路:取得其中你需要排序的字段,作為一維數組arr1,後邊會用來排序多維數組data.
這裡主要以二維數組為例,多維數組也是同樣的思路。 

$data = array(<br>    array('price' => '500', 'count' => '40', 'level' => '1'),<br>    array('price' => '600', 'count' => '30', 'level' => '2'),<br>    array('price' => '650', 'count' => '20', 'level' => '3'),<br>    array('price' => '700', 'count' => '10', 'level' => '4'),<br>);
登入後複製

假設以價格來倒敘,我們需要取得價格這個字段的值,作為一個新的一維數組。

$arr1 = array_map(create_function('$n', 'return $n["price"];'), $data);
登入後複製

如果php版本大於 5.5的話,可以直接用 array_column 這個數組操作方法直接獲取某個字段,這裡也可以通過foreach來獲取,但是盡量用內置函數處理。

然後就用array_multisort處理,

array_multisort($arr1,SORT_DESC,$data );//多维数组的排序
登入後複製

我們可以列印$data最後的結果來看看結果:

 

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門推薦
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板