Учебник по основам PHP. PHPBeginner


Массивы - часть 9


См. также 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")




Начало  Назад  Вперед