我有一个复杂的嵌套数组,我想删除具有特定store_id的所有项目及其子项:
这真的很难,我不知道如何弄明白。
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
)
非常感谢任何帮助。
答案 0 :(得分:2)
如果要删除整个数组元素(如果它具有特定的store_id),则只需要遍历数组,检查store_id并删除元素(如果不再需要它)。
E.g:
<?php
foreach($data as $key=>$row){
if($row['store_id'] == 2){
unset($data[$key]);
}
}
?>
您可以将“2”更改为您想要专门删除商店的任何内容。或者,如果要匹配多个商店,可以更改if以匹配一组id。
答案 1 :(得分:1)
以下是在多维数组中取消设置cart_id的示例。
<?php
foreach($data as $key=>$row){
unset($data[$key]['cart_id']);
}
?>