安利個小李子先
"red", "5"=>"green", "name"=>"tom" ]; $other=[ "5"=>"new red", "name"=>"jessy" ]; $new_a=array_merge($arr,$other); $new_b=array_merge_recursive($other,$arr); var_dump($new);
array_merge是將兩個數組合并為一個數組,如果兩個數組中有相同鍵名,那么后面的會覆蓋前面的
array_merge_recursive 也是合并兩個相同數組,如果兩個數組中有相同鍵名,
那么根本不會進行鍵名覆蓋,而是將多個相同鍵名的值組成一個新數組.
要求:
此二維數組返回內容不定,
但需要保證展示順序為直播>航拍>視頻這樣的排序。
有就必須按照這個優先級,沒有就算...
// id 沒有任何卵用,再次只是湊數標識 $arr=[ ["id"=>1,"name"=>"位置圖"], ["id"=>2,"name"=>"效果圖"], ["id"=>3,"name"=>"實景"], ["id"=>4,"name"=>"樣板間"], ["id"=>5,"name"=>"視頻"], ["id"=>6,"name"=>"戶型"], ["id"=>7,"name"=>"其他"], ["id"=>8,"name"=>"航拍"], ["id"=>9,"name"=>"交通"], ["id"=>10,"name"=>"直播"], ["id"=>11,"name"=>"規劃"], ];處理階段
$num=3;//涉及三個優先級排序,這里定為3 foreach ($arr as $key => &$val) { $val["sort_num"]=""; if($val["name"]=="直播"){ $val["sort_num"]="1"; }elseif ($val["name"]=="航拍"){ $val["sort_num"]="2"; }elseif ($val["name"]=="視頻") { $val["sort_num"]="3"; }else{ $val["sort_num"]=++$num; } } unset($val); $newArr = []; $result = []; foreach ($arr as &$item) { $newArr[$item["sort_num"]][] = $item; } ---------- ksort($newArr); foreach($newArr as &$newItem) { if(is_array($newItem)) { $result = array_merge($result, $newItem); }else { //array_push($newItem); } } unset($newItem);
此時$result為最終想要的結果,如果有需要可以封裝下。
如果有更好的處理辦法,請各位大神指點下~
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/21796.html
摘要:下列的所有排序函數都是直接作用于數組本身,而不是返回一個新的有序的數組。倒序并保持索引關系,按鍵名排序按鍵名倒序使用用戶自定義的比較函數對數組中的值進行排序,要排序的數組需要用一種不尋常的標準進行排序,那么應該使用此函數。 數組排序,共13個 函數中有u的,能自定義比較函數;有k的,按照鍵來排序;有r(reverse)的,倒序;有a(association)的,一定是鍵值關聯,除了r...
摘要:概述我們知道,在編程語言中,數組的使用頻率是很高的,幾乎每個腳本都會使用到。循環缺點遍歷完成之后,不能對數組進行第二次遍歷數組內部指針指向了最后一個元素。 概述 我們知道,在 PHP 編程語言中,數組的使用頻率是很高的,幾乎每個腳本都會使用到。 PHP 自帶了大量的、優秀的操作數組的函數以供我們使用,本文就對這些數組函數的使用做一些分類和總結,方便大家以后查閱。 創建 1. range...
摘要:數組轉化字符串將一個一維數組的值轉化為字符串如果有,用將一維數組的值連接為一個字符串對數組進行編碼,返回格式字符串數組統計獲取數組元素長度統計數組中所有值出現的次數數組格式化移除數組中重復的值并非鍵交換數組中的鍵和值重新索引,如果是關聯數組 數組轉化字符串 implode (string $glue,array $pieces) / implode ( array $pieces )...
摘要:注模塊名右邊有小程序圖標即表明可以在小程序中使用。轉義字符串為合法的字符串字面量。轉義特殊字符用于構造函數。使構造函數繼承另一個構造函數原型鏈上的方法。 導語 Licia 是一套在開發中實踐積累起來的實用 JavaScript 工具庫。該庫目前擁有超過 300 個模塊,同時支持瀏覽器、node 及小程序運行環境,提供了包括日期格式化、md5、顏色轉換等實用模塊,可以極大地提高開發效率。...
摘要:如果給定的一個數超出了的范圍,將會被解釋為。從布爾值轉換將產生出零,將產生出壹。由于內部表達方式的原因,比較兩個浮點數是否相等是有問題的。和在小數點后五位精度內都是相等的。這里共有兩種語法規則一種簡單規則,一種復雜規則。 前言 搬運:PHP官方文檔 四種標量類型 boolean(布爾型) 這是最簡單的類型。boolean表達了真值,可以為TRUE或FLASE。要指定一個布爾值,使用關...
閱讀 2404·2021-11-24 09:39
閱讀 3223·2021-10-09 09:53
閱讀 1130·2021-09-22 16:06
閱讀 4441·2021-09-02 10:18
閱讀 800·2021-08-23 09:42
閱讀 1760·2021-08-17 10:11
閱讀 2685·2019-08-30 13:02
閱讀 2120·2019-08-30 12:49