php : array_map
Un petit article pour préciser quelques éléments qui ne sont pas clair dans la documentation array_map de php. En effet, l'utilisation de cette fonction est très puissante et peut dans beaucoup de cas éviter d'écrire un code qui serait difficile à maintenir par un autre développeur.
Exemple simple
function cube($n)
{
return($n * $n * $n);
}
$a = array(1, 2, 3, 4, 5);
$b = array_map("cube", $a);
print_r($b);
Mais il y a plusieurs autres possibilités d’appel
Appel à l’intérieur de la class
Syntax : array_map( array( __CLASS__, 'methodName' ), $array );
Exemple : array_map(array($this, 'dash'), $data);
Apple à l’extérieur de la class
Syntax : array_map( array( 'ClassName', 'methodName' ), $array );
Appel avec d’autres paramètres (datax : array)
function dash($data1,$data2)
{
…
}
array_map(array($this, 'dash'), $data1, $data2);
Ces techniques sont aussi valables sur les fonctions : array_walk(), call_user_func(), call_user_func_array()