52680.fb2 Справочник по PHP - читать онлайн бесплатно полную версию книги . Страница 41

Справочник по PHP - читать онлайн бесплатно полную версию книги . Страница 41

Необязательный параметр preserve_keys указывает, стоит ли сохранять ключи исходного массива или нет. Если этот параметр равен false (значение по умолчанию), то индексы полученных массивов будут заданы числами начиная с нуля. Если же параметр равен true, то ключи исходного массива сохраняются.

Пример использования функции array_chunk():

$array = array("1-ый элемент",

"2-ой элемент",

"3-ий элемент",

"4-ый элемент",

"5-ый элемент");

print_r(array_chunk($array, 2));

print_r(array_chunk($array, 2, TRUE));

Пример выведет следующее:

Array( [0] => Array ( [0] => 1-ый элемент [1] => 2-ой элемент ) [1] => Array ( [0] => 3-ий элемент [1] => 4-ый элемент ) [2] => Array ( [0] => 5-ый элемент ))Array( [0] => Array ( [0] => 1-ый элемент [1] => 2-ой элемент ) [1] => Array ( [2] => 3-ий элемент [3] => 4-ый элемент ) [2] => Array ( [4] => 5-ый элемент ))

Функция поддерживается PHP 4 >= 4.2.0, PHP 5

array_fill

Функция заполняет массив определенными значениями.

Синтаксис:

array array_fill(int start_index, int num, mixed value)

Функция array_fill() возвращает массив, который содержит значения, указанные в параметре value размерностью num начиная с элемента, указанного в параметре start_index.

Пример использования array_diff_uassoc():

<?php

$a = array_fill(5, 6, 'banana');

print_r($a);

?>

Пример выведет следующее:

Array( [5] => banana [6] => banana [7] => banana [8] => banana [9] => banana [10] => banana)

Функция поддерживается PHP 4 >= 4.2.0, PHP 5

array_filter

Функция применяет фильтр к массиву, используя пользовательскую функцию.

Синтаксис:

array array_filter(array input [, callback callback])

Функция array_filter() возвращает массив, который содержит значения, имеющиеся в массиве input отфильтрованные в соответсвтии с результатами работы пользовательской функции callback.

В случае, если исходный массив input является ассоциативным массивом, в результирующем массиве индексы сохраняются.

Пример использования функции array_filter():

<?php

function odd($var) {

return ($var % 2 == 1);

}

function even($var) {

return ($var % 2 == 0);

}

$array1 = array ("a"=>1, "b"=>2, "c"=>3, "d"=>4, "e"=>5);

$array2 = array (6, 7, 8, 9, 10, 11, 12);

echo "Нечетные :n";

print_r(array_filter($array1, "odd"));

echo "Четные :n";

print_r(array_filter($array2, "even"));

?>

Пример выведет следующее:

Нечетные :Array( [a] => 1 [c] => 3 [e] => 5)Четные :Array( [0] => 6 [2] => 8 [4] => 10 [6] => 12)

Стоит отметить, что вместо имени фильтрующей функции можно указать массив, который содержит ссылку на объект и имя метода.

Также стоит отметить, что при обработке массива фукцией array_filter() его нельзя изменять: добавлять, удалять элементы или обнулять массив, т.к. это может привести к некоррекстной работе функции.