PHP數組有一維數組和而未數組,我們這裡分析一下PHP二維數組排序的技巧。PHP,一個嵌套的縮寫名稱,是英文超級文本預處理語言(PHP:Hypertext Preprocessor)的縮寫。PHP 是一種 HTML 內嵌式的語言,是一種在服務器端執行的嵌入HTML文檔的腳本語言,語言的風格有類似於C語言,現在被很多的網站編程人員廣泛的運用。PHP 獨特的語法混合了 C、Java、Perl 以及 PHP 自創新的語法。
PHP二維數組排序使用asort函數,但如果是多維數組按照其中某索引值進行排序。一般來說這類排序會引入臨時數組來存儲中間變量比如key值通過對key的排序實現多維數組的一個排序。以下是我寫的一段按照二維數組中的時間值進行排序:
PHP二維數組排序代碼:
- <?php
- //以時間InputDate為key值進行二維數組降序排列
- function array_sort($arr,$keys,$type){
- $keysvalue=array();
- $i = 0;
- foreach($arr as $key=>$val) {
- $val[$keys] = str_replace("-","",$val[$keys]);
- $val[$keys] = str_replace(" ","",$val[$keys]);
- $val[$keys] = str_replace(":","",$val[$keys]);
- $keysvalue[] =$val[$keys];
- }
- asort($keysvalue); //key值排序
- reset($keysvalue); //指針重新指向數組第一個
- foreach($keysvalue as $key=>$vals) {
- $keysort[] = $key;
- }
- $new_array = array();
- if($type != "asc"){
- for($ii=count($keysort)-1; $ii>=0; $ii--) {
- $new_array[] = $arr[$keysort[$ii]];
- }
- }else{
- for($ii=0; $ii<count($keysort); $ii++){
- $new_array[] = $arr[$keysort[$ii]];
- }
- }
- return $new_array;
- }
- ?>