91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

php刪除多維數組的方法

發布時間:2020-10-14 14:17:38 來源:億速云 閱讀:245 作者:小新 欄目:編程語言

這篇文章主要介紹了php刪除多維數組的方法,具有一定借鑒價值,需要的朋友可以參考下。希望大家閱讀完這篇文章后大有收獲。下面讓小編帶著大家一起了解一下。

php刪除多維數組的方法:首先創建一個PHP示例文件;然后通過unsetMultiKeys方法刪除復雜的多維數組里面的指定鍵值對;最后查看運行結果即可。

php刪除多維數組里面的值

在手冊里面發現,改造后變成了一個函數,可以刪除復雜的多維數組里面的制定鍵值對!

<?php
$arr = [
    'test' => 'value',
    'level_one' => [
        'level_two' => [
            'level_three' => [
                'replace_this_array' => [
                    'special_key' => 'replacement_value',
                    'key_one' => 'testing',
                    'key_two' => 'value',
                    'four' => 'another value',
                ],
            ],
            'ordinary_key' => 'value',
        ],
    ],
];
$unset = array('special_key', 'ordinary_key', 'four');
echo "<pre>";
print_r(unsetMultiKeys($unset, $arr));
print_r($arr);
echo "</pre>";
exit;
function unsetMultiKeys($unset, $array) {
    $arrayIterator = new \RecursiveArrayIterator($array);
    $recursiveIterator = new \RecursiveIteratorIterator($arrayIterator, \RecursiveIteratorIterator::SELF_FIRST);
    foreach ($recursiveIterator as $key => $value) {
        foreach ($unset as $v) {
            if (is_array($value) && array_key_exists($v, $value)) {
                // 刪除不要的值
                unset($value[$v]);
                // Get the current depth and traverse back up the tree, saving the modifications
                $currentDepth = $recursiveIterator->getDepth();
                for ($subDepth = $currentDepth; $subDepth >= 0; $subDepth--) {
                    // Get the current level iterator
                    $subIterator = $recursiveIterator->getSubIterator($subDepth);
                    // If we are on the level we want to change, use the replacements ($value) other wise set the key to the parent iterators value
                    $subIterator->offsetSet($subIterator->key(), ($subDepth === $currentDepth ? $value : $recursiveIterator->getSubIterator(($subDepth + 1))->getArrayCopy()));
                }
            }
        }
    }
    return $recursiveIterator->getArrayCopy();
}

運行結果:

php刪除多維數組的方法

改變多維數組里面的鍵值對

感謝你能夠認真閱讀完這篇文章,希望小編分享php刪除多維數組的方法內容對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,遇到問題就找億速云,詳細的解決方法等著你來學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

php
AI

广汉市| 江孜县| 灵丘县| 岳阳市| 乐业县| 汉川市| 孝感市| 大宁县| 阜新| 遵义县| 滨州市| 明水县| 卓尼县| 宜阳县| 白水县| 邯郸县| 资兴市| 徐水县| 应城市| 卢氏县| 屏东市| 镇坪县| 玛多县| 凤城市| 太和县| 武陟县| 滨海县| 正蓝旗| 武安市| 吴旗县| 炎陵县| 石台县| 界首市| 和政县| 郸城县| 曲阳县| 外汇| 绵阳市| 喀喇沁旗| 开鲁县| 泌阳县|