将值添加到复杂数组

Posted

技术标签:

【中文标题】将值添加到复杂数组【英文标题】:Add values to complex array 【发布时间】:2015-05-25 21:51:00 【问题描述】:

我的软件有一个模块数组,我需要知道如何通过 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 的评论是否仍然适用?

【问题讨论】:

而不是投反对票然后离开甚至没有贡献也许你应该被要求给出一个理由,让 OP 可以看到投反对票。 $modules[] = array('MODULE_NAME' => array('file' => '',.....));。您只是将其添加为新元素?甚至$modules['MODULE_NAME'] = array(.... @Darren 你能看看我的编辑吗? “而不是投反对票,然后甚至没有贡献就离开,也许你应该被要求给出一个理由,让 OP 可以看到投反对票”-5 票应该告诉你一个故事,真的。也许是时候阅读帮助部分了,有一些关于“我能问什么”的内容。如果投票者不得不发表评论只是为了告诉您原因,那么您只会得到毫无帮助的通用回复“不同意”“糟糕的问题” @James 你可以阻止人们给出一般的理由。其实一点都不难。那不是重点。我之前自己搜索过,没有找到答案。在来这里之前,请不要对我可能做过或可能没有做过的事情做出假设。 【参考方案1】:

我评论的是如何做到这一点。我假设您将此数组存储在缓存/会话中,它是半持久的,对吗?您要做的是将项目附加到数组中。假设您的数组如下所示:

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

您需要做的就是将它添加到数组中:

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

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

看到这个:Example

它坚持你需要的结构。

【讨论】:

@Core 我的快乐伙伴。

以上是关于将值添加到复杂数组的主要内容,如果未能解决你的问题,请参考以下文章

Firestore 将值添加到数组字段

如何将值添加到数组 - Angular2

使用循环将值从 C++ 中的一维数组添加到二维数组中

如何将值添加到从颤振到 Firestore 的数组中

如果选中,则反应复选框将值添加到数组

如何在 Reactjs 中的状态对象内将值添加到数组中