我需要一個具有可變數量參數的函數來訪問多維數組的元素。我這樣做($ 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