array_map
Applique une fonction sur les éléments d'un tableau
&reftitle.description;
arrayarray_map
callbackcallback
arrayarr1
array...
array_map retourne un tableau
contenant tous les éléments du tableau arr1,
après leur avoir appliqué la fonction callback.
Le nombre de paramètres de la fonction callback
doit être égal au nombre de tableaux passés dans la fonction
array_map.
&reftitle.parameters;
callback
La fonction de rappel à exécuter pour chaque élément de chaque
tableau.
arr1
Un tableau à exécuter via la fonction de
callback.
array
Liste des tableaux à exécuter via la fonction de
callback.
&reftitle.returnvalues;
Retourne un tableau contenant tous les éléments du tableau
arr1 après avoir appliqué la fonction de
callback sur chacun d'eux.
&reftitle.examples;
Exemple avec array_map
]]>
Le contenu de la variable $b sera :
1
[1] => 8
[2] => 27
[3] => 64
[4] => 125
)
]]>
array_map : utilisation d'une fonction quelconque (depuis PHP 5.3.0)
]]>
&example.outputs;
2
[1] => 4
[2] => 6
[3] => 8
[4] => 10
)
]]>
&reftitle.examples;
array_map : utilisation de plusieurs tableaux
$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);
?>
]]>
&example.outputs;
Le nombre 1 se dit uno en Espagnol
[1] => Le nombre 2 se dit dos en Espagnol
[2] => Le nombre 3 se dit tres en Espagnol
[3] => Le nombre 4 se dit cuatro en Espagnol
[4] => Le nombre 5 se dit cinco en Espagnol
)
// Contenu de $d
Array
(
[0] => Array
(
[1] => uno
)
[1] => Array
(
[2] => dos
)
[2] => Array
(
[3] => tres
)
[3] => Array
(
[4] => cuatro
)
[4] => Array
(
[5] => cinco
)
)
]]>
Généralement, lors de l'utilisation de plusieurs tableaux, ils doivent
être d'égale longueur, car la fonction de rappel est appliquée de manière
similaire à tous les tableaux. Si les tableaux sont de tailles inégales,
les plus petits seront complétés avec des éléments vides.
Une utilisation intéressante de cette fonction est la construction
de tableaux de tableaux, facilement réalisée en passant la valeur
&null; comme nom de fonction de rappel.
Création d'un tableau de tableaux
]]>
&example.outputs;
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
)
)
]]>
Si le tableau en argument contient des clés sous la forme de chaîne
de caractères, alors, le tableau retourné contiendra également
des clés sous la forme de chaîne de caractères, si et seulement si
un seul tableau est passé. Si plusieurs tableaux sont passés comme
argument, le tableau retourné aura toujours des clés sous la forme
d'entier.
array_map - avec des clés sous la forme de &string;
"value");
function cb1($a) {
return array ($a);
}
function cb2($a, $b) {
return array ($a, $b);
}
var_dump(array_map("cb1", $arr));
var_dump(array_map("cb2", $arr, $arr));
var_dump(array_map(null, $arr));
var_dump(array_map(null, $arr, $arr));
?>
]]>
&example.outputs;
array(1) {
[0]=>
string(5) "value"
}
}
array(1) {
[0]=>
array(2) {
[0]=>
string(5) "value"
[1]=>
string(5) "value"
}
}
array(1) {
["stringkey"]=>
string(5) "value"
}
array(1) {
[0]=>
array(2) {
[0]=>
string(5) "value"
[1]=>
string(5) "value"
}
}
]]>
&reftitle.seealso;
array_filter
array_reduce
array_walk
create_function
&seealso.callback;