array_map
Wendet eine Callback-Funktion auf die Elemente von Arrays an
Beschreibung
arrayarray_map
callbackfunction
arrayarr1
arrayarr2...
array_map gibt ein Array mit allen Elementen von
arr1 zurück, nachdem die Callback-Funktion
function auf jedes einzelne Element angewandt
wurde. Die Anzahl Parameter, welche die Callback-Funktion
function akzeptiert, sollte der Anzahl der an
array_map übergebenen Arrays entsprechen.
array_map
]]>
Dies speichert in $b:
1
[1] => 8
[2] => 27
[3] => 64
[4] => 125
)
]]>
array_map - Verwendung mehrerer Arrays
$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);
?>
]]>
Dies resultiert in:
Die Zahl 1 heißt auf Spanisch uno
[1] => Die Zahl 2 heißt auf Spanisch dos
[2] => Die Zahl 3 heißt auf Spanisch tres
[3] => Die Zahl 4 heißt auf Spanisch cuatro
[4] => Die Zahl 5 heißt auf Spanisch cinco
)
// Ausgabe von $d
Array
(
[0] => Array
(
[1] => uno
)
[1] => Array
(
[2] => dos
)
[2] => Array
(
[3] => tres
)
[3] => Array
(
[4] => cuatro
)
[4] => Array
(
[5] => cinco
)
)
]]>
Bei Verwendung von zwei oder mehr Arrays sollten diese gewöhnlich
die gleiche Länge besitzen, da die Callback-Funktion parallel auf
die entsprechenden Elemente angewandt wird. Haben die Arrays
unterschiedliche Längen, wird das kürzeste um leere Elemente
erweitert.
Eine interessante Anwendung dieser Funktion ist die Konstruktion
eines Arrays bestehend aus Arrays, was mit &null; als Name der
Callback-Funktion leicht realisiert werden kann.
Erstellen eines Arrays mit Arrays
]]>
Würde folgendes ausgeben:
Array
(
[0] => 1
[1] => eins
[2] => uno
)
[1] => Array
(
[0] => 2
[1] => zwei
[2] => dos
)
[2] => Array
(
[0] => 3
[1] => drei
[2] => tres
)
[3] => Array
(
[0] => 4
[1] => vier
[2] => cuatro
)
[4] => Array
(
[0] => 5
[1] => fünf
[2] => cinco
)
)
]]>
Siehe auch array_filter,
array_reduce und
array_walk.