П О Р Т А Л                            
С Е Т Е В Ы Х                          
П Р О Е К Т О В                        
  
Поиск по сайту:
                                                 
Главная

О проекте

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

MySQL

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

Хостинг

Другое








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

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

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

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

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

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

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

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

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

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

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

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



 
 
| Добавить в избранное | Сделать стартовой | Помощь




Руководство по 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-2016 Project.Net.Ru