(PHP 4, PHP 5)
array_splice -- Удалить последовательность элементов массива и заменить её другой последовательностью
array_splice() удаляет length
элементов,
расположенных на растоянии offset
от начала
массива input
, и заменяет их элементами
массива replacement
, если он передан в качестве параметра.
Возвращает массив выбранных элементов.
Если параметр offset
положителен, будут удалены элементы,
находящиеся на расстоянии offset от начала array
. Если
offset
отрицателен, будут удалены элементы,
находящиеся на расстоянии offset от конца array
.
Если параметр length
опущен, будут удалены все элементы
начиная с позиции offset
и до конца массива.
Если передан положительный параметр length
,
будет удалено length элементов.
Если передан отрицательный параметр length
,
будут удалены элементы исходного массива, начиная с позиции offset
и заканчивая позицией, отстоящей на length
элементов от конца array
.
Совет: для того, чтобы удалить все элементы массива, начиная с позиции
offset
в то время как указан параметр
replacement
, используйте
count($input) в качестве параметра
length
.
Если передан массив replacement
в качестве аргумента, тогда
удалённые элементы будут заменены элементами этого массива.
Если параметры offset
и
length
таковы, что из исходного массива не будет ничего удалено,
тогда элементы массива replacement
будут вставлены на позицию offset
.
Обратите внимание, что ключи массива replacement
не сохраняются.
Совет: если вам нужно вставить
один элемент в массив, нет необходимости заключать его в вызов функции array(),
если только этот элемент не является массивом.
Последующие выражения произведут одинаковые
изменения в массиве $input
:
Таблица 1. Эквиваленты array_splice()
array_push($input, $x, $y) | array_splice($input, count($input), 0, array($x, $y)) |
array_pop($input) | array_splice($input, -1) |
array_shift($input) | array_splice($input, 0, 1) |
array_unshift($input, $x, $y) | array_splice($input, 0, 0, array($x, $y)) |
$input[$x] = $y // в случае, если key равен offset | array_splice($input, $x, 1, $y) |
Возвращает массив, содержащий удалённые элементы.
См. также array_slice(), unset() и array_merge().
Пред. | Начало | След. |
array_slice | Уровень выше | array_sum |