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

О проекте

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

MySQL

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

Хостинг

Другое








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

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

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

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

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

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

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

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

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

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

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

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



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





Руководство по 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