PHP:按索引查找、存储、寻址数组键
我有一个非常复杂的多维数组($tree)。我收到那个大数组作为参考 现在,我需要在其中找到某个键并在其中插入数据 找到所需的钥匙很容易。函数搜索数组并返回路径$path。例如,它返回PHP:按索引查找、存储、寻址数组键,php,arrays,indexing,Php,Arrays,Indexing,我有一个非常复杂的多维数组($tree)。我收到那个大数组作为参考 现在,我需要在其中找到某个键并在其中插入数据 找到所需的钥匙很容易。函数搜索数组并返回路径$path。例如,它返回$path=array('index1','index2','index3')。这意味着,我需要分配我的数据,比如$tree['index1']['index2']['index3']=$some\u data\u I\u needed\u插入 现在出现的问题是,我无法根据从seatch函数接收的地址寻址该数组索引
$path=array('index1','index2','index3')
。这意味着,我需要分配我的数据,比如$tree['index1']['index2']['index3']=$some\u data\u I\u needed\u插入
现在出现的问题是,我无法根据从seatch函数接收的地址寻址该数组索引
我试着这样做:
<?php
$path = '[\'index1\'][\'index2\'][\'index3\']';
$tree{$path} = $some_data_i_needed_to_insert;
?>
在我的例子中,有没有一种方法可以寻址数组索引?如果你有一个path数组,那么没有一个合理的直接表达式可以用来直接访问一个键。但是,这可以:
$path = array('1334', '#below', '3242');
$node =& $complexArray;
foreach ($path as $key) {
$node =& $node[$key];
}
$node = $data;
不清楚你在问什么。我们能看看第一个函数吗?这可能有助于澄清问题是什么。你为什么要做
$tree{'[1334][\'\'\\'\\'\'\'.[3242]'}
?更新了问题。对不起,我不清楚。