Подтвердить что ты не робот

PHP извлекает часть из массива, сохраняя предыдущие ключи

У меня есть массив с определенными ключами. Я хочу получить первые 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);

Спасибо заранее. Извините за мой английский.

4b9b3361

Ответ 1

Попробуйте array_slice с $preserve_keys, установленным на true.

Ответ 2

С array_ sl ice исходный массив не изменяется:

$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