Reputation: 21957
I have the array with specific keys. I want to get the first 5 array elements. I use array_splice()
. All OK, but keys in the new array is 0, 1, 2, 3 ,4. And I want to keep the previous array keys. I can do it with foreach
, but i am finding the elegant method.
My code:
$levels = array('a' => 1, 'b' =>2, 'c' => 3, 'd' => 4, 'f' => 5, 'g' => 6);
$levels = array_splice($levels, 5);
Thank you in advance. Sorry for my english.
Upvotes: 19
Views: 20712
Reputation: 287885
With array_slice, the original array is not modified:
$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
Upvotes: 14