将值添加到复杂数组


Add values to complex array

我的软件有一个模块数组,我需要知道如何通过PHP添加到数组中,而无需用户直接添加(即自动化)。我可以用一个看起来像这样的简单数组来做到这一点:

$array = array( 'key'=>'value' );

然而,我的数组看起来是这样的:

$modules = array('Forums'=>array('file'=>)...

那么,我如何使用PHP函数向数组添加值呢?比如说,用户单击一个按钮添加一个新模块,它只需要模块的名称和文件名?

foreach($modules as $name => $module) if ($module['enabled']) {
    require_once('include/scripts/'.$module['file']);
}

如果以上内容用于加载模块,@Darren的评论是否仍然适用?

我评论的是如何做到这一点。我假设你将这个数组存储在一个缓存/会话中,它是半持久的,对吗?您要做的是将项附加到数组中。假设你的数组看起来像这样:

$modules = array(
    'Forums' => array('file' => 'link/to/file.php', 'enabled' => TRUE),
    .....etc
);

您所需要做的就是将其添加到阵列中:

$modules['Example_Module'] = array('file' => 'link/to/this/module', 'enabled' => TRUE);

这将允许您继续使用您所拥有的包含代码块。

请参阅:示例

它能坚持你需要的结构。