array_fill()的起始索引由$start_index参数决定,可为任意整数(含负数),生成$count个连续键名;php 8.0.0+支持负数自然递增,旧版仅首键为负;$count≤0时返回空数组。

索引从你指定的 $start_index 参数值开始,不是固定从 0 或 1。
array_fill(int $start_index, int $count, mixed $value) 的第一个参数 $start_index 就是返回数组的第一个键名,完全由你决定。
比如:
-
array_fill(0, 3, 'x')→ 键为[0, 1, 2] -
array_fill(5, 3, 'x')→ 键为[5, 6, 7] -
array_fill(-3, 4, 'x')→ PHP 8.0.0+ 中键为[-3, -2, -1, 0](负数连续递增) -
array_fill(-3, 4, 'x')→ PHP [-3, 0, 1, 2](仅首键为负,后续从 0 开始)
关键点说明
该函数不强制索引起点,它只是按你给的起始值,生成连续整数键(含负数),数量由 `$count` 决定。
常见用法场景
- 初始化索引数组:用 0 作起始索引,如
array_fill(0, 10, null)得到 [0..9] 的空占位数组 - 预留偏移位置:如需跳过前几个索引,直接从 100 开始填,写
array_fill(100, 5, 'default') - 构建带负键结构:PHP 8.0+ 支持自然负数递增,适合某些协议或映射场景
注意边界行为
如果 `$count` 是 0 或负数:
- PHP 8.0.0+:返回空数组(
[]),不报错 - PHP 8.0.0+ 若 `$count > 2147483647` 或 `ValueError
- 旧版本(false
php免费学习视频:立即使用
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!











