array_map
指定した配列の要素にコールバック関数を適用する
説明
arrayarray_map
mixedcallback
arrayarr1
arrayarr2...
array_map は、arr1の
各要素にコールバック関数を適用した後、その全ての要素を含む要素を
返します。コールバック関数が受け付けるパラメータの数は、
array_mapに渡される配列の数に一致している必
要があります。
array_map の例
この例により $bには、array (1, 8, 27,
64, 125);が代入されます。
array_map - より多くの配列を使用
$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);
// 出力:
// Array
// (
// [0] => The number 1 is called uno in Spanish
// [1] => The number 2 is called dos in Spanish
// [2] => The number 3 is called tres in Spanish
// [3] => The number 4 is called cuatro in Spanish
// [4] => The number 5 is called cinco in Spanish
// )
$d = array_map("map_Spanish", $a , $b);
print_r($d);
// 出力:
// Array
// (
// [0] => Array
// (
// [1] => uno
// )
//
// [1] => Array
// (
// [2] => dos
// )
//
// [2] => Array
// (
// [3] => tres
// )
//
// [3] => Array
// (
// [4] => cuatro
// )
//
// [4] => Array
// (
// [5] => cinco
// )
//
// )
]]>
通常、二つ以上の配列を使用する場合、それらの長さは等しい必要があ
ります。これは、コールバック関数が対応する要素に対して並行して適
用されるためです。配列の長さが等しくない場合、最も短い配列は空の
要素で拡張されます。
この関数の面白い使用方法として、配列の配列を構築するというものが
あります。これは、コールバック関数の名前として
&null;を使用することにより、簡単に実行できるもの
です。
配列の配列を作成する
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も参照下さい。