有没有办法拥有多维配置数组?

时间:2012-07-25 03:20:25

标签: php arrays codeigniter config

我想在Codeigniter的应用程序部分创建自己的自定义配置数据,但想知道我们是否可以构建二维配置数组。

application/config/myconfig.php的示例:

$myconfigarray = array('row1'=> array( 'col1'=>'col1val',
                                       'col2'=>'col2val',
                                       'col3'=>'col3val' ),
                       'row2'=> array( 'col1'=>'col1val',
                                       'col2'=>'col2val',
                                       'col3'=>'col3val' ));

目前默认情况下,Codeigniter似乎只支持一维配置数组。我如何使用多维数组?

1 个答案:

答案 0 :(得分:1)

您可以拥有任何大小的形状或形式的配置数组。让他们完全工作取决于你想要用它们做什么,你如何加载它们,以及你如何阅读它们。

我认为您的问题是您需要将$myconfigarray重命名为$config

  

http://codeigniter.com/user_guide/libraries/config.html

     

注意:如果您确实创建了自己的配置文件,请使用与之相同的格式   主要的,将您的项目存储在名为$config

的数组中

因此,对于您的示例,假设该文件名为myconfig.php

$this->load->config('myconfig');
foreach (config_item('row1') as $k => $v)
{
    echo $k.' = '.$v;
}

这将打印:

col1 = col1val
col2 = col2val
col3 = col3val

如果您需要访问某个索引,则必须执行以下操作:

$item = config_item('row1');
echo $item['col1']; // col1val

如果你正好运行PHP 5.4,你可以这样访问它:

echo config_item('row1')['col1'];