Справочник по PHP

Вставка/удаление элементов


array_pad

Добавляет в массив несколько элементов.

Синтаксис :

array array_pad(array input, int pad_size, mixed pad_value)

Функция array_pad() возвращает копию массива input, в который были добавлены элементы с значениями pad_value, так, что число элементов в получившемся массиве будет равно pad_size.

Если pad_size>0, то элементы будут добавлены справа, а если <0 - то слева.

В случае, если значение pad_sizeменьше элементов в исходном массиве input, то никакого добавления не произойдет, и функция вернет исходный массив input.

$arr = array(12, 10, 4);$result = array_pad($arr, 5, 0);// $result = array(12, 10, 4, 0, 0);$result = array_pad($arr, -7, -1);// $result = array(-1, -1, -1, -1, 12, 10, 4)$result = array_pad($arr, 2, "noop");// не добавит

array_pop

Извлекает и удаляет последние элементы массива.

Синтаксис :

mixed array_pop(array arr);

Функция array_pop() снимает элемент с "вершины" стека (то есть берет последний элемент списка) и возвращает его, удалив после этого его из arr. С помощью этой функции мы можем строить конструкции, напоминающие стек. Если массив arr был пуст, функция возвращает пустую строку.

$stack = array("orange", "apple", "raspberry");$fruits = array_pop($stack);// $fruit = "raspberry"// $stack = array("orange", "apple")

array_push



Добавляет элементы в конец массива.

Синтаксис :

int array_push(array arr, mixed var1 [, mixed var2, ..])

Эта функция добавляет к массиву arr элементы var1,var2 и т.д. Она присваивает им числовые индексы - точно так же, как это происходит для стандартных []. Если вам нужно добавить всего один элемент, наверное, проще будет воспользоваться этим оператором:

array_push($Arr,1000);     // вызываем функцию$Arr[]=100;                // то же самое, но короче

Обратите внимание, что функция array_push() воспринимает массив, как стек, и добавляет элементы всегда в его конец.

array_shift


Извлекает и удаляет первый элемент массива.

Синтаксис :

mixed array_shift(array arr)

Эта функция извлекает первый элемент массива arr и возвращает его. Она сильно напоминает array_pop(), но только получает начальный, а не конечный элемент, а также производит довольно сильную "встряску" всего массива: ведь при извлечении первого элемента приходится корректировать все числовые индексы у всех оставшихся элементов, т.к. все последующие элементы массива сдвигаются на одну позицию вперед.

$ar = array("-v", "-f");$opt = array(_shift($arr);// теперь $arr = array("-f"), а $opt = "-v"

array_unshift

Добавляет элементы в начало массива.

Синтаксис :

int array_unshift(list arr, mixed var1 [,mixed var2, ...])

Функция очень похожа на array_push, но добавляет перечисленные элементы не в конец, а в начало массива. При этом порядок следования var1, var2 и т.д. остается тем же, т.е. элементы как бы "вдвигаются" в список слева. Новым элементам списка, как обычно, назначаются числовые индексы, начиная с 0; при этом все ключи старых элементов массива, которые также были числовыми, изменяются (чаще всего они увеличиваются на число вставляемых значений). Функция возвращает новый размер массива.

$A = array(10,"a"=>20,30);array_unshift($A,"!","?");// теперь $A===array(0=>"!", 1=>"?", 2=>10, a=>20, 3=>30)

array_unique

Создает массив только из уникальных значений.

Синтаксис :

array array_unique(array arr)

Функция array_unique() возвращает массив, составленный из всех уникальных значений массива arr вместе с их ключами, путем удаления всех дублирующих значений. В результирующий массив помещаются первые встретившиеся пары ключ=>значение. Индексы сохраняются.

$input = array("a" => "green", "red", "b" =>          "green", "blue", "red");$result = array_unique($input);// теперь $result===("a"=>"green", "red", "blue");


Содержание раздела