我需要一个具有可变数量参数的函数来访问多维数组的元素。我这样做($ this - > _ config是数组)...访问多维数组元素,使用函数
function item()
{
if(func_num_args() != 0){
$config = $this->_config;
$args = func_get_args();
foreach($args as $item){
$config = $config[$item];
}
unset($args);
return $config;
}
else throw new Exception('An item index is required.');
}
有没有办法做得更好?谢谢大家!
该方法位于一个类中,该类管理存储在数组中的各种配置项($ this - > _ config)。这个类加载了更多的配置文件,名为$ config,并将所有文件中的oll项添加到$ this - > _ config中。现在,可以在配置文件“config_file.php”中创建一个具有以下元素的数组$ config: $ config ['config_file'] ['element1'] ='aaa'; $ config ['config_file'] ['element2'] ='aaa'; $ config ['config_file'] ['database'] ['user'] ='user'; 因此,调用另一个类... $ configmanager-> item('config_file','database','user'),它必须返回'user'。 – flux 2010-01-08 09:52:45
在实践中,我不知道有多少个参数被传递......谢谢你的建议,第二个可能对我有用 – flux 2010-01-08 09:58:02
好吧,你是对的......我想我会做这样,无论数组$ this-> config中有什么,它都会返回内容,如果它是另一个数组。非常感谢您的帮助 – flux 2010-01-09 15:17:54