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() - Удаляет переменную