5

当我这样做时,我无法正确理解array_values:

$array[] = 'data1'; // I want [0 => 'data1']
unset($array[0]); // I want []
$array = array_values($array); // I want [] but keys resetted
$array[] = 'data2'; // I want [0 => 'data2']
$array[] = 'data3'; // I want [0 => 'data2', 1 => 'data3']
dump($array);

我有结果:

array:2 [▼
  1 => "data2"
  2 => "data3"
]

但我想要:

array:2 [▼
  0 => "data2"
  1 => "data3"
]

也许有人可以向我解释一下?因为我有点迷路:-/

例如,如果我有一个包含 10 个值的数组,则删除第 3 个值并执行array_valueson,它运行良好。

但是,如果我从数组中删除最后一个值,那么当我执行 array_value 时,我添加的下一个值总是 id 1 而不是 0。

4

1 回答 1

0

此行为已被报告为错误:https ://bugs.php.net/bug.php?id=75433和(显然是这篇文章的结果):https ://bugs.php.net/bug .php?id=75653

于 2017-12-08T14:23:30.493 回答