php 二维数组排序,多维数组排序
生活随笔
收集整理的這篇文章主要介紹了
php 二维数组排序,多维数组排序
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
對2維數(shù)組或者多維數(shù)組排序是常見的問題,在php中我們有個專門的多維數(shù)組排序函數(shù),下面簡單介紹下:
array_multisort(array1,sorting order, sorting type,array2,array3..)是對多個數(shù)組或多維數(shù)組進(jìn)行排序的函數(shù)。
?
| array1 | 必需。規(guī)定輸入的數(shù)組。 |
| sorting order | 可選。規(guī)定排列順序。可能的值是 SORT_ASC 和 SORT_DESC。 |
| sorting type | 可選。規(guī)定排序類型。可能的值是SORT_REGULAR、SORT_NUMERIC和SORT_STRING。 |
| array2 | 可選。規(guī)定輸入的數(shù)組。 |
| array3 | 可選。規(guī)定輸入的數(shù)組。 |
?
參數(shù)中的數(shù)組被當(dāng)成一個表的列并以行來進(jìn)行排序 - 這類似 SQL 的 ORDER BY 子句的功能。第一個數(shù)組是要排序的主要數(shù)組。數(shù)組中的行(值)比較為相同的話,就會按照下一個輸入數(shù)組中相應(yīng)值的大小進(jìn)行排序,依此類推。
第一個參數(shù)是數(shù)組,隨后的每一個參數(shù)可能是數(shù)組,也可能是下面的排序順序標(biāo)志(排序標(biāo)志用于更改默認(rèn)的排列順序)之一:
- SORT_ASC - 默認(rèn),按升序排列。(A-Z)
- SORT_DESC - 按降序排列。(Z-A)
隨后可以指定排序的類型:
- SORT_REGULAR - 默認(rèn)。將每一項(xiàng)按常規(guī)順序排列。
- SORT_NUMERIC - 將每一項(xiàng)按數(shù)字順序排列。
- SORT_STRING - 將每一項(xiàng)按字母順序排列
<?php function my_sort($arrays,$sort_key,$sort_order=SORT_ASC,$sort_type=SORT_NUMERIC ){ if(is_array($arrays)){ foreach ($arrays as $array){ if(is_array($array)){ $key_arrays[] = $array[$sort_key]; }else{ return false; } } }else{ return false; } array_multisort($key_arrays,$sort_order,$sort_type,$arrays); return $arrays; } $person = array( array('id'=>1,'name'=>'fj','weight'=>100,'height'=>180), array('id'=>2,'name'=>'tom','weight'=>53,'height'=>150), array('id'=>3,'name'=>'jerry','weight'=>120,'height'=>156), array('id'=>4,'name'=>'bill','weight'=>110,'height'=>190), array('id'=>5,'name'=>'linken','weight'=>80,'height'=>200), array('id'=>6,'name'=>'madana','weight'=>95,'height'=>110), array('id'=>7,'name'=>'jordan','weight'=>70,'height'=>170) ); var_dump($person); $person = my_sort($person,'name',SORT_ASC,SORT_STRING); var_dump($person); $person = my_sort($person,'weight'); var_dump($person); ?>
?
轉(zhuǎn)載于:https://www.cnblogs.com/lsy-ai/p/5845178.html
總結(jié)
以上是生活随笔為你收集整理的php 二维数组排序,多维数组排序的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Pycharm 快捷键
- 下一篇: 天道无极打pk好吗?