今天在做業務邏輯的過程中,需要在乙個不確定的多維陣列中刪除某個特定的key,查了挺長時間加上自己的修改,終於滿足了業務邏輯,該方法在修改後應該可以適用於很多地方,所以記錄下來以備後用,我這裡是乙個多維陣列,還是json_encode後的,主要目的是刪除所有old_tags_id陣列中有tag_id=264的資料,順便要刪除相應的tag_name,還有 addtag要減1,,**如下:
先放遞迴函式,當然這裡是核心,很多人看了這個應該就已經知道如何使用了.
public function dealmenutagdelete(&$menudata, $tag_id)
forwww.cppcns.comeach ($menudata as $key => $val) }}
if (is_array($val))
}return $menudata;
}維陣列長這樣,還是jeson_encode後的格式:
[ ,
"zizicd2": ,
"zizicd3":
},"addtag": 0,
"old_tags": ,
"old_tags_id": ,
"new_tags_id":
},, ,\"segementation\":[,]}",
"configid": "2392",
"new_tags_id": [
"new_tag2"]}]
然後賦值,呼叫
$tag_id = 264;
$menudata = json_decode($data,true);//這裡第二個引數用true就會轉化為陣列了
self::dealmenutagdelete($menudata,$tagpyexbngxnl_id);
print_r($menudata);
本文標題: php遞迴刪除多維陣列中的某個值
本文位址:
php對多維陣列的某個鍵值排序方法
function 二維陣列按指定的鍵值排序 author www.111cn.net function array sort array,keys,type asc if isset keys trim keys if isset type type in array strtolower type...
PHP遞迴多維陣列替換鍵名和鍵值
在很多時候獲取到的陣列結果不盡人意,需要自己修改後才能的到乙個滿足需求的陣列,這是後可以通過遞迴的方式修改鍵名 替換鍵名的 例如 function changekeys array,keyenarray,keyzhcnarray temparray key value return temparra...
php如何移除陣列中的某個值,刪除陣列中某個值元素
本例項是要利用php array diff函式來,刪除陣列中某個值元素哦,方法很簡單用foreach再加array diff函式就 如下 複製 a1 array array blue red www.phprm.com array black pink green a2 array aaa pink...