从PHP数组中提取部分并保留之前的键名

19

我有一个具有特定键的数组。我想获取前5个数组元素。我使用array_splice()。一切都好,但新数组中的键是0、1、2、3、4。而我想保留之前的数组键。我可以用foreach做到,但我正在寻找更优雅的方法。
我的代码:

$levels = array('a' => 1, 'b' =>2, 'c' => 3, 'd' => 4, 'f' => 5, 'g' => 6);
$levels = array_splice($levels, 5);

提前感谢。对不起我的英语。

2个回答

33

尝试使用 array_slice,并将$preserve_keys设置为true


14

使用array_slice函数时,原始数组不会被修改:

$levels = array('a' => 1, 'b' =>2, 'c' => 3, 'd' => 4, 'f' => 5, 'g' => 6);
$firstLevels = array_slice($levels, 0, 5, true);
// count($levels) is 6, count($firstLevels) 5

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接