П О Р Т А Л                            
С Е Т Е В Ы Х                          
П Р О Е К Т О В                        
  
                                                 
Главная

О проекте

Web-мастеру
     HTML & JavaScript
     SSI
     Perl
     PHP
     XML & XSLT
     Unix Shell

MySQL

Безопасность

Хостинг

Другое







Самое читаемое:

Учебник PHP - "Для Чайника".
Просмотров 98151 раз(а).

Иллюстрированный самоучитель по созданию сайтов.
Просмотров 29068 раз(а).

Учебник HTML.
Просмотров 56195 раз(а).

Руководство по PHP5.
Просмотров 25934 раз(а).

Хостинг через призму DNS.
Просмотров 30464 раз(а).

Подборка текстов стандартных документов.
Просмотров 28973 раз(а).

Учебник PHP - Самоучитель
Просмотров 33708 раз(а).

Документация на MySQL (учебник & справочное руководство)
Просмотров 34979 раз(а).

Внешние атаки...
Просмотров 26948 раз(а).

Учебник PHP.
Просмотров 22780 раз(а).

SSI в примерах.
Просмотров 17853 раз(а).



 
 



Руководство по PHP
Пред. След.

array_map

(PHP 4 >= 4.0.6, PHP 5)

array_map --  Применить функцию обратного вызова ко всем элементам указанных массивов

Описание

array array_map ( mixed callback, array array1 [, array array2...] )

Функция array_map() возвращает массив, содержащий элементы всех указанных массивов после их обработки функцией обратного вызова. Количество параметров, передаваемых функции обратного вызова, должно совпадать с количеством массивов, переданным функции array_map().

Пример 1. Пример использования array_map()

function cube($n) {
    return $n*$n*$n;
}

$a = array(1, 2, 3, 4, 5);
$b = array_map("cube", $a);
print_r($b);

В результате переменная $b будет содержать:
Array
(
[0] => 1
[1] => 8
[2] => 27
[3] => 64
[4] => 125
)

Пример 2. Пример использования array_map(): обработка нескольких массивов

function show_Spanish($n, $m) {
    return "Число $n по-испански -  $m";
}

function map_Spanish($n, $m) {
    return array ($n => $m);
}

$a = array(1, 2, 3, 4, 5);
$b = array("uno", "dos", "tres", "cuatro", "cinco");

$c = array_map("show_Spanish", $a, $b);
print_r($c);

$d = array_map("map_Spanish", $a , $b);
print_r($d);

Результат выполнения:
// printout of $c
Array
(
[0] => Число 1 по-испански -  uno
[1] => Число 2 по-испански -  dos
[2] => Число 3 по-испански -  tres
[3] => Число 4 по-испански -  cuatro
[4] => Число 5 по-испански -  cinco
)

// printout of $d
Array
(
[0] => Array
(
[1] => uno
)

[1] => Array
(
[2] => dos
)

[2] => Array
(
[3] => tres
)

[3] => Array
(
[4] => cuatro
)

[4] => Array
(
[5] => cinco
)

)

Обычно при обработке двух или более массивов, они имею одинаковую длину, так как функция обратного вызова применяется параллельно к соответствующим элементам массивов. Если массивы имеют различную длину, самый маленький из них дополняется элементами с пустыми значениями.

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

Пример 3. Создание массива массивов

$a = array(1, 2, 3, 4, 5);
$b = array("one", "two", "three", "four", "five");
$c = array("uno", "dos", "tres", "cuatro", "cinco");

$d = array_map(null, $a, $b, $c);
print_r($d);

Результатом выполнения вышеприведенной программы будет:
Array
(
[0] => Array
(
[0] => 1
[1] => one
[2] => uno
)

[1] => Array
(
[0] => 2
[1] => two
[2] => dos
)

[2] => Array
(
[0] => 3
[1] => three
[2] => tres
)

[3] => Array
(
[0] => 4
[1] => four
[2] => cuatro
)

[4] => Array
(
[0] => 5
[1] => five
[2] => cinco
)

)

См.также array_filter() и array_reduce().


Пред. Начало След.
array_keys Уровень выше array_merge_recursive


 





Copyright © 2005-2011 Project.Net.Ru


Хочешь красиво выглядеть? вечерние платья на выпускной. Большой каталог продукции.