【问题标题】:PHP - add further data inside a specific array key whilst keeping the existing dataPHP - 在特定数组键中添加更多数据,同时保留现有数据
【发布时间】:2018-07-13 03:02:33
【问题描述】:

如果我有这样的数组:

$data[0] = ['a' => 'b'];
$data[1] = ['c' => 'd'];
$data[2] = ['e' => 'f'];

如何在数组的特定键中添加更多数据,同时保留现有数据,例如

$data[0] = ['a' => 'b'];
$data[1] = ['c' => 'd', 'xx' => 'zz']; // New data has been added here.
$data[2] = ['e' => 'f'];

例如,我如何向$data[1] 添加内容?

我已阅读以下内容,但这些似乎不是答案:

我看过array_combine()array_push()array_merge() 等方法,但似乎无法做到这一点。如果这是一个明显的问题,我深表歉意,但我已尝试查找上述内容但无法弄清楚。

【问题讨论】:

标签: php arrays


【解决方案1】:

一种方法是这样的:

$data[1]['xx'] = 'zz';

这是另一个:

$data[1] += ['xx' => 'zz'];

【讨论】:

  • 谢谢,效果很好。出于某种原因,我正在研究可能甚至不需要的 array_ 方法。
  • 乐于助人。如果这解决了您的问题,请考虑标记为答案以关闭此问题。 TY
【解决方案2】:

您可以通过简单的 foreach 来做到这一点,只需在 foreach 中使用 & 通过引用传递数组

$data[0] = ['a' => 'b'];
$data[1] = ['c' => 'd'];
$data[2] = ['e' => 'f'];


foreach($data as $k => &$n){

if($k == 1) $n['xx'] = 'zz';

}
print_r($data);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-04-01
    • 2011-12-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-08
    相关资源
    最近更新 更多