Php 有没有办法拥有多维配置数组?
我想在Codeigniter的应用程序部分创建我自己的自定义配置数据,但我想知道是否可以构建二维配置数组Php 有没有办法拥有多维配置数组?,php,arrays,codeigniter,config,Php,Arrays,Codeigniter,Config,我想在Codeigniter的应用程序部分创建我自己的自定义配置数据,但我想知道是否可以构建二维配置数组 application/config/myconfig.php的示例: $myconfigarray = array('row1'=> array( 'col1'=>'col1val', 'col2'=>'col2val',
application/config/myconfig.php的示例
:
$myconfigarray = array('row1'=> array( 'col1'=>'col1val',
'col2'=>'col2val',
'col3'=>'col3val' ),
'row2'=> array( 'col1'=>'col1val',
'col2'=>'col2val',
'col3'=>'col3val' ));
$this->load->config('myconfig');
foreach (config_item('row1') as $k => $v)
{
echo $k.' = '.$v;
}
至少目前默认情况下,Codeigniter似乎只支持一维配置数组。如何使用多维数组?您可以使用任何大小、形状或形式的配置数组。让它们工作完全取决于你想用它们做什么,如何加载它们,以及如何阅读它们 我认为您的问题是需要将
$myconfigaray
重命名为$config
:
注意:如果您创建自己的配置文件,请使用与相同的格式
主要的一个,将您的项目存储在一个名为$config
对于您的示例,假设文件名为myconfig.php
:
$myconfigarray = array('row1'=> array( 'col1'=>'col1val',
'col2'=>'col2val',
'col3'=>'col3val' ),
'row2'=> array( 'col1'=>'col1val',
'col2'=>'col2val',
'col3'=>'col3val' ));
$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'];
您可以有任何大小、形状或形式的配置数组。让它们工作完全取决于你想用它们做什么,如何加载它们,以及如何阅读它们 我认为您的问题是需要将
$myconfigaray
重命名为$config
:
注意:如果您创建自己的配置文件,请使用与相同的格式
主要的一个,将您的项目存储在一个名为$config
对于您的示例,假设文件名为myconfig.php
:
$myconfigarray = array('row1'=> array( 'col1'=>'col1val',
'col2'=>'col2val',
'col3'=>'col3val' ),
'row2'=> array( 'col1'=>'col1val',
'col2'=>'col2val',
'col3'=>'col3val' ));
$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'];
你应该详细说明。解释你想要发生什么,你试图让它工作,以及实际发生了什么。现在这个问题没有太多意义。例如,application/config/config.php文件中的数据只有一个一维数组,称为config,我们可以将该配置数组转换为二维数组吗?codeigniter是否提供了处理二维数组的方法/函数?发布您想要使用的配置数组,并解释哪些不起作用。只需单击以向您的帖子添加更多信息。我发布了一个配置数组示例,这通常是我想要的。您应该详细说明。解释你想要发生什么,你试图让它工作,以及实际发生了什么。现在这个问题没有太多意义。例如,application/config/config.php文件中的数据只有一个一维数组,称为config,我们可以将该配置数组转换为二维数组吗?codeigniter是否提供了处理二维数组的方法/函数?发布您想要使用的配置数组,并解释哪些不起作用。我发布了一个配置数组示例,这通常就是我想要的。是的,当然,为什么它不工作呢?如何加载和读取配置文件?使用codeigniters函数确定如何访问2d配置数组?确定示例,访问配置数组项的codeigniters函数是:$lang=$this->config->item('itemname');但是如果数组是二维的,那么codeigniter是否具有访问二维配置数组的功能呢?是的,不要因为使用框架而忘记PHP;)毕竟,这就是它的构造——它不是魔法。是的,当然,为什么它不起作用呢?如何加载和读取配置文件?使用codeigniters函数确定如何访问2d配置数组?确定示例,访问配置数组项的codeigniters函数是:$lang=$this->config->item('itemname');但是如果数组是二维的,那么codeigniter是否具有访问二维配置数组的功能呢?是的,不要因为使用框架而忘记PHP;)毕竟,这就是它的构造——它不是魔法。