Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP:按索引查找、存储、寻址数组键_Php_Arrays_Indexing - Fatal编程技术网

PHP:按索引查找、存储、寻址数组键

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函数接收的地址寻址该数组索引

我有一个非常复杂的多维数组($tree)。我收到那个大数组作为参考

现在,我需要在其中找到某个键并在其中插入数据

找到所需的钥匙很容易。函数搜索数组并返回路径$path。例如,它返回
$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]'}
?更新了问题。对不起,我不清楚。