В массиве произвольного порядка и ключей, как показано нижезначение Grab массив с ключами в заданном диапазоне - PHP 5.5
$myArray = array(
1 => 'foo',
4 => 'bar',
6 => 'foobar',
24 => 'barfoo',
30 => 'fizz',
35 => 'buzz',
50 => 'fizzbuzz'
);
Как я могу получить отрезок массива с помощью ключевого диапазона, например, каждый элемент с ключом между 5 и 40
Что-то вроде array_range($myArray, 5, 40);
Ожидаемый результат: array(6 => 'foobar', 24 => 'barfoo', 30 => 'fizz', 35 => 'buzz')
Это похоже на How to use array_filter() to filter array keys?, но в этом случае я ограничен PHP 5.5.
все значения массива уникальных или вы ожидаете дубликаты? – edcs
Возможный дубликат [PHP: Как использовать массив \ _filter() для фильтрации ключей массива?] (Http://stackoverflow.com/questions/4260086/php-how-to-use-array-filter-to-filter- array-keys) –
Вы можете array_flip() ваш массив (который меняет ключи и значения вокруг), array_filter() перевернутый массив, а затем array_flip() результат обратно. Конечно, это будет работать только на 100% с массивами, которые не содержат никаких повторяющихся значений, но если вы сможете удовлетворить это требование, тогда он должен работать. – GordonM