array_map Aplica la retrollamada especificada a los elementos de cada array &reftitle.description; arrayarray_map callablecallback arrayarray1 array... array_map devuelve un array que contiene todos los elementos de array1 después de haber aplicado la función callback a cada uno de ellos. El número de parámetros que la función callback acepte debería coincidir con el número de arrays proporcionados a array_map. &reftitle.parameters; callback Función de retrollamada a ejecutar para cada elemento de cada array. array1 Un array a recorrer con la función callback. ... Lista variable de argumentos de tipo array a recorrer con la función callback. &reftitle.returnvalues; Devuelve un array que contiene todos los elementos de array1 después de aplicar la función callback a cada uno de ellos. &reftitle.examples; Ejemplo de <function>array_map</function> ]]> Este ejemplo hace que $b contenga: 1 [1] => 8 [2] => 27 [3] => 64 [4] => 125 ) ]]> <function>array_map</function> usando una función lambda (desde PHP 5.3.0) ]]> 2 [1] => 4 [2] => 6 [3] => 8 [4] => 10 ) ]]> <function>array_map</function> - usando más arrays $m)); } $a = array(1, 2, 3, 4, 5); $b = array("uno", "dos", "tres", "cuatro", "cinco"); $c = array_map("mostrar_en_español", $a, $b); print_r($c); $d = array_map("correspondencia_en_español", $a , $b); print_r($d); ?> ]]> &example.outputs; El número 1 se llama uno en español [1] => El número 2 se llama dos en español [2] => El número 3 se llama tres en español [3] => El número 4 se llama cuatro en español [4] => El número 5 se llama cinco en español ) // salida of $d Array ( [0] => Array ( [1] => uno ) [1] => Array ( [2] => dos ) [2] => Array ( [3] => tres ) [3] => Array ( [4] => cuatro ) [4] => Array ( [5] => cinco ) ) ]]> Usualmente, cuando se usan dos o más arrays, estos deberían ser de la misma longitud, ya que la retrollamada se aplica en paralelo a los elementos correspondientes. Si los arrays son de longitudes diferentes, los más cortos se extenderán con elementos vacíos para que coincidan con la logintud del más largo. Un uso interesante de esta función es la construcción de un array de arrays, lo que se puede llevar a cabo usando &null; como el nombre de la retrollamada. Crear un array de arrays ]]> &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 el argumento array contiene claves de tipo string, el array devuelto tendrá claves de tipo string si y solo si se proporciona exactamente un array. Si se pasa más de un argumento, el array devuelto siempre tendrá claves de tipo integer. <function>array_map</function> - con claves de tipo 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 &seealso.callback;