PHP:使用 foreach 从多维数组中(按键)删除元素 [英] PHP: remove element from multidimensional array (by key) using foreach

查看:49
本文介绍了PHP:使用 foreach 从多维数组中(按键)删除元素的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我得到了多维数组.从每个子数组中,我想删除/取消设置索引为 1 的值.我的数组 $data.

I got multidimensional array. From each subarray, I would like to remove / unset values with index 1. My array $data.

Array
(
    [3463] => Array
        (
            [0] => 1
            [1] => 2014
            [context] => 'aaa'
        )

    [3563] => Array
        (
            [0] => 12
            [1] => 2014
            [context] => 'aaa'
        )       

    [2421] => Array
        (
            [0] => 5
            [1] => 2014
            [context] => 'zzz'
        )               
)

我想从子数组中删除索引为1"的每个元素.期望的输出是:

I would like to remove every element with index '1' from subarrays. Desired output is:

Array
(
    [3463] => Array
        (
            [0] => 1
            [context] => 'aaa'
        )

    [3563] => Array
        (
            [0] => 12
            [context] => 'aaa'
        )       

    [2421] => Array
        (
            [0] => 5
            [context] => 'zzz'
        )               
)

为什么这不起作用?

foreach ($data as $subArr) {
   foreach ($subArr as $key => $value) {
       if ($key == '1') {
        unset($subArr[$key]);
       }

   }
}

如果这个问题对你们来说微不足道,我很抱歉.

I'm sorry if this problem is trivial for you guys.

推荐答案

简单的方法!?您只需使用一个 foreach 即可完成此操作!

easy way!? you can do this just with one foreach!

foreach ($data as $key => $subArr) {
    unset($subArr['1']);
    $data[$key] = $subArr;  
}

这篇关于PHP:使用 foreach 从多维数组中(按键)删除元素的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆