array_map

(PHP 4 >= 4.0.6, PHP 5)

array_map --  Aplica la llamada de retorno especificada a los elementos de las matrices dadas

Descripción

array array_map ( callback llamada_de_retorno, array matriz1 [, 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().

Ejemplo 1. Ejemplo de array_map()

<?php
function cubo($n)
{
    return(
$n * $n * $n);
}

$a = array(1, 2, 3, 4, 5);
$b = array_map("cubo", $a);
print_r($b);
?>

Esto hace que $b contenga:

Array
(
    [0] => 1
    [1] => 8
    [2] => 27
    [3] => 64
    [4] => 125
)

Ejemplo 2. array_map() - usando más matrices

<?php
function mostrar_Castellano($n, $m)
{
    return(
"El n&uacute;mero $n es llamado $m en Castellano");
}

function
map_Castellano($n, $m)
{
    return(array(
$n => $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);
?>

El resultado del ejemplo seria:

// salida correspondiente a $c
Array
(
    [0] => El n&uacute;mero 1 es llamado uno en Castellano
    [1] => El n&uacute;mero 2 es llamado dos en Castellano
    [2] => El n&uacute;mero 3 es llamado tres en Castellano
    [3] => El n&uacute;mero 4 es llamado cuatro en Castellano
    [4] => El n&uacute;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.

Ejemplo 3. Creación de una matriz de matrices

<?php
$a
= array(1, 2, 3, 4, 5);
$b = array("one", "two", "three", "four", "five");
$c = array("uno", "dos", "tres", "cuatro", "cinco");

$d = array_map(null, $a, $b, $c);
print_r($d);
?>

El resultado del ejemplo seria:

Array
(
    [0] => 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
        )

)

Vea también array_filter(), array_reduce(), array_walk(), y information about the callback type.

Hosting by: hurra.com
Generated: 2007-01-26 18:00:54