2011-11-15 30 views
4

我無法獲取ini文件中數組的值。Zend Config Ini - 無法解析數組

這裏的ini文件:

module.name = Core 
module.version = 1 
module.package = 'Core Modules' 

module.dependency[] = Dep1 
module.dependency[] = Dep2 
module.dependency[] = Dep3 

下面是我用它來分析它的代碼:

$ini = new Zend_Config_Ini('/path/to/module.ini'); 

下正常工作:

echo $ini->module->name; 

然而,這導致錯誤('調用非成員函數toArray()'):

$ini->module->dependency->toArray(); 

此外,這將返回null:

var_dump($ini->module->dependency); 

如果我改變的ini文件:

module.name = Core 
module.version = 1 
module.package = 'Core Modules' 

dependency[] = Dep1 
dependency[] = Dep2 
dependency[] = Dep3 

我可以通過訪問數組:

$ini->dependency->toArray(); 

我想要'模塊'。前綴,但是,因爲其他配置數據將在文件中。

任何幫助,非常感謝!

回答

5

您應該在配置的頂部指定一個部分。事情是這樣的:

[production] 
module.dependency[] = Dep1 
module.dependency[] = Dep2 
module.dependency[] = Dep3 

現在,這個會做OK:

$ini = new Zend_Config_Ini('/path/to/module.ini', 'production'); 
$ini->module->dependency->toArray();