Удаление части массива или замена
См. также array_splice().
array_splice
Удаление части массива или замена ее частью другого
array array_splice (array array, int offset [, int length [. array replacement]])
Удаляет последовательность элементов массива array путем замены их на элементы из массива repl acement, начиная с элемента массива array, имеющего позицию offset, в количестве length элементов. Воз-вращает массив удаленных элементов.
Если offset > 0, то последовательность будет начинаться с элемента, имеющего позицию offset от начала массива; если < 0, то отсчет производится от конца массива. Не забывайте, что первый элемент имеет нулевую позицию, а последний — (-1).
Если указывается length > 0, то это число удаляемых элементов массива array; если length<0, то это позиция последнего удаляемого элемента в массиве array от его конца. Если length не указывается, то удаляются элементы вплоть до конца массива array. Чтобы удалить все элементы массива array, начиная от позиции offset и вплоть до конца массива array, при указанном аргументе replacement используйте аргумент length, равный count($input).
Реально выяснилось, что при указании отрицательных аргументов offset, length функция работает неправильно.
Если указан массив replacement, то удаляемые элементы заменяются на элементы массива repl acement. Если offset и length такие, что удалять нечего, то элементы массива replacement вставляются в позицию, указанную аргументом offset. Если массив replacement состоит из одного элемента, его можно указать как простую переменную, не заключенную в структуру аггау(). Действие следующих функций эквивалентно:
array_push (Sinput, $x, Sy) |
array_splice (Sinput, count (Sinput), 0, array ($x, Sy)) |
array pop (Sinput) |
array_splice (Sinput, -1) |
array shift (Sinput) |
array _splice (Sinput, 0, 1) |
array unshift (Sinput, $x, Sy) |
array splice (Sinput, 0, 0, array ($x, $y)) |
$a[$x] = Sy |
array splice (Sinput, $x, 1, Sy) |
$input = array ("Al". "B2". "C3", "D4"). array_splice (Sinput. 2); // $input = array ("Al". "B2") //array_splice ($input. 1. -1); // $input = array ("Al". "D4") array_splice ($input. 1. count($input), "XI"); // Sinput = array ("Al", "XI") //array_splice (Sinput -1. 1. arrayC'Yl". "Y2")); // Sinput = array ("Al". "B2". // "C3". "Yl". "Y2")
Содержание Назад Вперед