(PHP)递归遍历数组中的子元素,可删除或修改任意层级的子元素
目前主流的删除数组子元素的方法,都是只能删除第一层级的子元素,通过下面的源码可以实现删除任意层级的数据子元素。
源码
查看源代码
$array = [
‘a’ => [
‘b’ => [
‘c’ => ‘d’,
‘e’ => ‘f’
]
],
‘g’ => [
‘h’ => ‘i’
]
];
$deleteKey = ‘a.b.c’;
$keyArray = explode(’.’, $deleteKey);
//change a.b.c value
r e s u l t [ ′ c h a n g e ′ ] = r e c u r A r r a y D i f f ( result['change'] = recurArrayDiff( result[′change′]=recurArrayDiff(array, $keyArray, ‘change a.b.c value’);
//delete a.b.c
r e s u l t [ ′ d e l e t e ′ ] = r e c u r A