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

PHP如何重新索引含负整数键的数组并重置连续数字键?

更简便的实现方案

你可以通过按键排序+重新索引的组合,用两个PHP内置函数就能完成需求,比手动循环更简洁:

// 先复制原数组避免修改原数据(可选,若不需要保留原数组可直接操作$arr)
$new = $arr;
// 按键的升序排序数组,此时-1会排在0前面
ksort($new);
// 提取值并重新建立从0开始的连续索引
$new = array_values($new);

效果验证

原数组:

$arr = [];
$arr[0] = 'second';
$arr[-1] = 'first';

执行上述代码后,$new的结构就是:

Array
(
    [0] => first
    [1] => second
)

原理说明

  • ksort() 会按照数组键的数值升序排列元素,让原数组中键为-1的first排在键为0的second前面;
  • array_values() 会忽略原数组的键,提取所有值并重新生成从0开始的连续数字索引,正好符合你想要的结构。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.15 20:33:15