Php 如何动态取消嵌套数组键?
假设我有一个数组:Php 如何动态取消嵌套数组键?,php,arrays,unset,Php,Arrays,Unset,假设我有一个数组: $doc = array( 'nfe' => array( 'inf' => array( 'det' => array( 'emit' => array( 'name' => 'My name' ) ) ) ) ) 和另一个数组,其中包含我要取
$doc = array(
'nfe' => array(
'inf' => array(
'det' => array(
'emit' => array(
'name' => 'My name'
)
)
)
)
)
和另一个数组,其中包含我要取消设置的键(按顺序):
如何动态执行此操作:
unset($doc['nfe']['inf']['det']['emit']);
基于两个数组
$doc
和$keys
?在我的一些代码中玩:
以下是一种eval
方法:
function unsetter($path, &$array) {
$path = "['" . implode("']['", $path) . "']";
eval("unset(\$array{$path});");
}
使用我的一些代码: 以下是一种
eval
方法:
function unsetter($path, &$array) {
$path = "['" . implode("']['", $path) . "']";
eval("unset(\$array{$path});");
}
到目前为止你试过什么吗?到目前为止你试过什么吗?哇,我从来没有想到过这样的解决办法。它就像一个符咒。非常感谢。哇,我想不出这样的解决办法。它就像一个符咒。非常感谢。
function unsetter($path, &$array) {
$path = "['" . implode("']['", $path) . "']";
eval("unset(\$array{$path});");
}