array_map Aplica la llamada de retorno especificada a los elementos de las matrices dadas &reftitle.description; arrayarray_map callbackllamada_de_retorno arraymatriz1 array... array_map devuelve una matriz que contiene todos los elementos de matriz1 después de haber aplicado la función llamada_de_retorno a cada uno de ellos. El número de parámetros que la función llamada_de_retorno acepte debería coincidir con el número de matrices que son pasadas como argumentos a array_map. &reftitle.parameters; llamada_de_retorno Función tipo llamada de retorno a ejecutar para cada elemento en cada matriz. matriz1 Una matriz a recorrer con la función llamada_de_retorno. matriz Lista variable de argumentos tipo matriz a recorrer con la función llamada_de_retorno. &reftitle.returnvalues; Devuelve una matriz que contiene todos los elementos de matriz1 después de aplicar la función llamada_de_retorno a cada uno de ellos. &reftitle.examples; Ejemplo de <function>array_map</function> ]]> Esto hace que $b contenga: 1 [1] => 8 [2] => 27 [3] => 64 [4] => 125 ) ]]> &reftitle.examples; <function>array_map</function> - usando más matrices $m)); } $a = array(1, 2, 3, 4, 5); $b = array("uno", "dos", "tres", "cuatro", "cinco"); $c = array_map("mostrar_castellano", $a, $b); print_r($c); $d = array_map("map_castellano", $a , $b); print_r($d); ?> ]]> &example.outputs; El número 1 es llamado uno en castellano [1] => El número 2 es llamado dos en castellano [2] => El número 3 es llamado tres en castellano [3] => El número 4 es llamado cuatro en castellano [4] => El número 5 es llamado cinco en castellano ) // salida correspondiente a $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 matrices, éstas deberían ser de longitudes iguales ya que la llamada de retorno es aplicada en paralelo a los elementos correspondientes. Si las matrices son de longitudes diferentes, la más corta de ellas será extendida con elementos vacíos. Un uso interesante de esta función es la construcción de una matriz de matrices, que puede ser llevada a cabo usando &null; como el nombre de la llamada de retorno. Creación de una matriz de matrices ]]> &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 matriz contiene claves tipo cadena, entonces la matriz devuelta tendrá claves tipo cadena si y solo si es pasada exactamente una matriz. Si más de un argumento es pasado, entonces la matriz devuelta siempre tendrá claves tipo entero. <function>array_map</function> - con claves tipo cadena "valor"); function llamada1($a) { return array ($a); } function llamada2($a, $b) { return array ($a, $b); } var_dump(array_map("llamada1", $matriz)); var_dump(array_map("llamada2", $matriz, $matriz)); var_dump(array_map(null, $matriz)); var_dump(array_map(null, $matriz, $matriz)); ?> ]]> &example.outputs; array(1) { [0]=> string(5) "valor" } } array(1) { [0]=> array(2) { [0]=> string(5) "valor" [1]=> string(5) "valor" } } array(1) { ["clave_cadena"]=> string(5) "valor" } array(1) { [0]=> array(2) { [0]=> string(5) "valor" [1]=> string(5) "valor" } } ]]> &reftitle.seealso; array_filter array_reduce array_walk create_function &seealso.callback;