array_slice
(PHP 4, PHP 5, PHP 7)
array_slice — Выбирает срез массива
Описание
$array
, int $offset
, int|null $length = null
, bool $preserve_keys = false
) : array
array_slice() возвращает последовательность
элементов массива array, определённую параметрами
offset и length.
Список параметров
-
array -
Входной массив.
-
offset -
Если параметр
offsetнеотрицательный, последовательность начнётся на указанном расстоянии от началаarray.Если
offsetотрицательный, последовательность начнётся с концаarray.Замечание:
Обратите внимание, что параметр
offsetобозначает положение в массиве, а не ключ. -
length -
Если в эту функцию передан положительный параметр
length, последовательность будет включать количество элементов меньшее или равноеlength.Если количество элементов массива меньше чем параметр
length, то только доступные элементы массива будут присутствовать.Если в эту функцию передан отрицательный параметр
length, последовательность остановится на указанном расстоянии от конца массива.Если он опущен, последовательность будет содержать все элементы с
offsetдо конца массиваarray. -
preserve_keys -
Замечание:
Обратите внимание, что по умолчанию array_slice() сбрасывает ключи массива. Вы можете переопределить это поведение, установив параметр
preserve_keysвtrue. Строковые ключи сохраняются, независимо от значения этого параметра.
Возвращаемые значения
Возвращает срез. Если смещение больше длины массива, то будет возвращен пустой массив.
Примеры
Пример #1 Пример использования array_slice()
<?php
$input = array("a", "b", "c", "d", "e");
$output = array_slice($input, 2); // возвращает "c", "d" и "e"
$output = array_slice($input, -2, 1); // возвращает "d"
$output = array_slice($input, 0, 3); // возвращает "a", "b" и "c"
// обратите внимание на различия в индексах массивов
print_r(array_slice($input, 2, -1));
print_r(array_slice($input, 2, -1, true));
?>
Результат выполнения данного примера:
Array
(
[0] => c
[1] => d
)
Array
(
[2] => c
[3] => d
)
Пример #2 Пример использования array_slice() с одномерным массивом
<?php
$input = array(1 => "a", "b", "c", "d", "e");
print_r(array_slice($input, 1, 2));
?>
Результат выполнения данного примера:
Array
(
[0] => b
[1] => c
)
Пример #3 Пример использования array_slice() с массивом из смешанных ключей
<?php
$ar = array('a'=>'apple', 'b'=>'banana', '42'=>'pear', 'd'=>'orange');
print_r(array_slice($ar, 0, 3));
print_r(array_slice($ar, 0, 3, true));
?>
Результат выполнения данного примера:
Array
(
[a] => apple
[b] => banana
[0] => pear
)
Array
(
[a] => apple
[b] => banana
[42] => pear
)
Смотрите также
- array_chunk() - Разбивает массив на части
- array_splice() - Удаляет часть массива и заменяет её чем-нибудь ещё
- unset() - Удаляет переменную