How to remove an item from a nested array in PHP?
我有一个复杂的嵌套数组,我想删除具有特定存储区ID的所有项及其子项:这真的很困难,我不知道怎么弄清楚。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
   | Array
(
[0] => Array
    (
        [cart_id ] => 89
        [product_id ] => 46
        [store_id ] => 2
        [option ] => Array
            (
                [0] => Array
                    (
                        [product_option_id ] => 92
                        [value ] => Aqua
                     )
                [1] => Array
                    (
                        [product_option_id ] => 91
                        [value ] => 85C
                     )
            )
    )
[1] => Array
    (
        [cart_id ] => 90
        [product_id ] => 46
        [store_id ] => 2
    )  | 
 
非常感谢你的帮助。
		
		
- 如何从关联数组中删除键及其值的可能重复项?
 
- @默罕默德托马雷:也许对你来说,这两个是一样的,但对我这个初学者来说,它们是完全不同的!
 
- @穆罕默德托马雷:我不理解投票结果。这似乎是一个合理的问题。对我来说,这是一个问题,我在谷歌里找不到与我的问题相匹配的合适答案,所以我遗漏了什么使这个问题落选?不打架,只是好奇。和平。
 
- @穆罕默德托马雷:只是因为对于像你这样的聪明人来说,这太容易了,应该投反对票!?
 
 
	  
 
如果你想删除整个数组元素,如果它有一个特定的store_id,你只需要在数组上循环,检查store_id,如果你不想再删除这个元素。
例如。:
1 2 3 4 5 6 7
   | <?php         
    foreach($data as $key=>$row){
        if($row['store_id'] == 2){
          unset($data[$key]);
        }
    }        
?>  | 
 
您可以将"2"更改为任何您想要专门删除存储的内容。或者,如果要匹配多个商店,可以更改if以匹配一组ID。
下面是在多维数组中取消设置购物车ID的示例。
1 2 3 4 5
   | <?php         
    foreach($data as $key=>$row){
          unset($data[$key]['cart_id']);
    }        
?>  |