You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在PHP数组的指定位置动态添加键值对?

在PHP数组指定位置动态添加键值对

需求说明

需要在以下初始数组中,'action'键的后方插入键值对0 => 123:

[
    'controller' => 'tasks',
    'action' => 'a',
    'abc' => 'xyz'
]

期望得到的目标数组:

[
    'controller' => 'tasks',
    'action' => 'a',
    0 => 123,
    'abc' => 'xyz'
]

尝试过的无效方法

以下写法均无法实现预期效果:

// array_merge($x['action'], [0=>123]); // 无效
// array_push($x['action'], [0=>123]); // 无效
// $x['action'][0] = 123; // 无效
// $x['action'][0] => 123; // 无效
// $x['action'] = [0 => 123]; // 无效
// array_merge($x, ['action' => [0 => 123]]); // 无效

可行解决方案(感谢@o1dskoo1)

通过遍历数组定位目标位置,利用array_splice完成插入操作:

$i = 1;
foreach($array as $key => $value)
{
    if($key == 'action')
    {
        array_splice($customUrl, $i, 0, 123); // 在位置$i处插入元素
    }
    $i++;
}

注:代码中$customUrl需替换为实际操作的数组变量名(如初始数组的变量$x)。

内容的提问来源于stack exchange,提问作者TechFanDan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 07:31:18