PHP 数组指定位置插入数据,保持key不变

在指定的数组内添加一个带key的键值对

$data = [
	'user_id' => 21,
	'user_name' => 'admin',
	'data' => 'ib1uaAi3VcK2dpRxk89hJA',
	'version' => '1.0',
	'time' => '123123123',
];
// 需要在数组data的version和time之间添加一个key='is_a_sskey'


// 在指定位置插入数据
public function array_insert(&$data, $insert, $index, $withKey = false): array
{
    if (!is_array($insert)) {
        $insert = [$index => $insert];
    }
    if ($withKey) {
        $data = array_slice($data, 0, $index) + $insert + array_slice($data, $index);
    } else {
        $data = array_merge(array_slice($data, 0, $index), $insert, array_slice($data, $index));
    }
    return $data;
}


array_insert($data, ['key' => '1dd', 'key22' => '222'], -1, true);

输出:

Array
(
    [user_id] => 21
    [user_name] => admin
    [data] => ib1uaAi3VcK2dpRxk89hJA
    [version] => 1.0
    [key] => 1dd
    [key22] => 222
    [time] => 123123123
)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值