久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

PHP遞歸刪除多維數組中的某個值

這篇文章主要介紹了PHP遞歸刪除多維數組中的某個值,需要的朋友可以參考下

今天在做業務邏輯的過程中,需要在一個不確定的多維數組中刪除某個特定的key,查了挺長時間加上自己的修改,終于滿足了業務邏輯,該方法在修改后應該可以適用于很多地方,所以記錄下來以備后用,我這里是一個多維數組,還是json_encode后的,主要目的是刪除所有old_tags_id數組中有tag_id=264的數據,順便要刪除相應的tag_name,還有 addtag要減1,,代碼如下:

先放遞歸函數,當然這里是核心,很多人看了這個應該就已經知道如何使用了.

public function dealMenuTagDelete(&$menuData, $tag_id)
  {
    if (!is_array($menuData)) {
      return false;
    }
    foreach ($menuData as $key => $val) {
      if ($key === 'old_tags_id') {
        foreach ($val as $tagKey => $tagVaule) {
          if ($tagVaule == $tag_id) {
            unset($menuData['old_tags_id'][$tagKey]);
            unset($menuData['old_tags'][$tagKey]);
            $menuData['addtag']--;
          }
        }
      }
      if (is_array($val)) {
        self::dealMenuTagDelete($menuData[$key], $tag_id);
      }
    }
    return $menuData;
  }

維數組長這樣,還是jeson_encode后的格式:

[  {
    "typ": "res_ejcd",
    "tit": "message1",
    "data": "1@2@3",
    "subdata": {
      "zizicd1": {
        "typ": "res_wb",
        "data": "qqqq",
        "addtag": 1,
        "old_tags": [
          "\"campaign綜合分析\"",
          "test add a tag"
        ],
        "old_tags_id": [
          "264",
          "17"
        ],
        "new_tags_id": [],
        "tit": "1"
      },
      "zizicd2": {
        "typ": "res_wb",
        "data": "wwww",
        "addtag": 1,
        "old_tags": [
          "test add a tag"
        ],
        "old_tags_id": [
          "17"
        ],
        "new_tags_id": [],
        "tit": "2"
      },
      "zizicd3": {
        "typ": "res_wb",
        "data": "ddd",
        "addtag": 1,
        "old_tags": [],
        "old_tags_id": [],
        "new_tags_id": [
          "new_tag1"
        ],
        "tit": "3"
      }
    },
    "addtag": 0,
    "old_tags": [],
    "old_tags_id": [],
    "new_tags_id": []
  },
  {
    "typ": "res_tw",
    "tit": "Post",
    "data": "2121",
    "subdata": null,
    "addtag": 1,
    "old_tags": [
      "“519引號閱讀user message圖文”"
    ],
    "old_tags_id": [
      "183"
    ],
    "new_tags_id": []
  },
  {
    "typ": "res_wb",
    "tit": "Today1",
    "data": "12312321",
    "subdata": null,
    "addtag": 1,
    "old_tags": [],
    "old_tags_id": [],
    "dynamicdata": "{\"default\":{\"message_type\":\"1\",\"val\":\"dynamic\"},\"segementation\":[{\"segId\":\"451\",\"message_type\":\"1\",\"val\":\"你屬于conversation 80這一組\"},{\"segId\":\"450\",\"message_type\":\"1\",\"val\":\"poll-1212\\n有三個人,rainbow H T_T\"}]}",
    "configId": "2392",
    "new_tags_id": [
      "new_tag2"
    ]
  }
]

然后賦值,調用

$tag_id = 264;
$menuData = json_decode($data,true);//這里第二個參數用true就會轉化為數組了
self::dealMenuTagDelete($menuData,$tag_id);
print_r($menuData);

以上所述是小編給大家介紹的PHP遞歸刪除多維數組中的某個值,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對網站的支持!

【網站聲明】本站除付費源碼經過測試外,其他素材未做測試,不保證完整性,網站上部分源碼僅限學習交流,請勿用于商業用途。如損害你的權益請聯系客服QQ:2655101040 給予處理,謝謝支持。

相關文檔推薦

這篇文章主要介紹了PHP定義字符串的四種方式,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
下面小編就為大家分享一篇php 替換文章中的圖片路徑,下載圖片到本地服務器的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
下面小編就為大家分享一篇PHP給源代碼加密的幾種方法匯總(推薦),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
下面小編就為大家分享一篇php打開本地exe程序,js打開本地exe應用程序,并傳遞相關參數方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
這篇文章主要介紹了PHP類的反射來實現依賴注入過程以及相關知識點分享,對此有興趣的朋友跟著小編學習下吧。
php遍歷一個文件夾內的所有文件和文件夾,并刪除所有文件夾和子文件夾下的所有文件的代碼,通過遞歸方式實現達到清空一個目錄的效果。本文給大家分享實例代碼,需要的朋友參考
主站蜘蛛池模板: 亚洲网站在线观看 | 99精品视频免费观看 | 欧美一区二区三区在线看 | 久久毛片 | 日韩国产欧美视频 | 日本高清中文字幕 | 男人天堂网址 | 视频一区中文字幕 | 久久午夜国产精品www忘忧草 | 91麻豆精品国产91久久久资源速度 | 欧美精品一区二区三区四区五区 | h网站在线观看 | av天天看| 色资源在线视频 | 自拍偷拍第一页 | 欧美日韩国产高清 | 欧美一区二区大片 | 天天艹日日干 | 亚洲福利一区二区 | 免费观看成人性生生活片 | 一区二区三区四区电影视频在线观看 | 免费在线视频精品 | 欧美高清一区 | 国产一级片 | 波多野结衣中文字幕一区二区三区 | 国产精品亚洲一区 | 青春草在线 | 99热这里都是精品 | 波多野结衣一区二区三区 | 亚洲激情第一页 | 国产精品久久国产精品 | 日韩在线观看网站 | 午夜亚洲 | 国产精品久久久久久久久免费高清 | 欧美日韩福利视频 | 你懂的av| 9久久婷婷国产综合精品性色 | av色噜噜 | 日本天天操| 国产日韩精品一区 | 欧美乱大交xxxxx另类电影 |