array_map

array_map -- Wykonuje funkcję zwrotną na elementach podanej tablicy

Opis

array array_map ( callback funkcja_zwrotna, array tbl1 [, array tbl2...])

array_map( ) zwraca tablicę zawierającą wszystkie elementy tablicy tbl1 po użyciu na każdej z nich funkcji zwrotnej . Liczba parametrów funkcji zwrotnej powinna być równa liczbie tablic przekazanych do funkcji array_map( ) .

Przykład 1 . Przykład użycia array_map( )

 
function

 
szescian(

 
$n

 
)

 
{

 
return

 
$n*$n*$n

 
;

 
}

 
$a

 
=

 
array(1

 
,

 
2

 
,

 
3

 
,

 
4

 
,

 
5)

 
;

 
$b

 
=

 
array_map("szescian"

 
,

 
$a)

 
;

 
print_r($b)

 
;



Powyższy przykład wyświetli :








Przykład 2 . array_map( ) - używanie większej ilości tablic

 
function

 
pokaz_po_Hiszpansku(

 
$n

 
,

 
$m

 
)

 
{

 
return

 
"Po

 
Hiszpańsku

 
liczba

 
$n

 
to

 
$m"

 
;

 
}

 
function

 
mapuj_na_Hiszpanski($n

 
,

 
$m

 
)

 
{

 
return

 
array

 
($n

 
=

 
$m)

 
;

 
}

 
$a

 
=

 
array(1

 
,

 
2

 
,

 
3

 
,

 
4

 
,

 
5)

 
;

 
$b

 
=

 
array("uno"

 
,

 
"dos"

 
,

 
"tres"

 
,

 
"cuatro"

 
,

 
"cinco")

 
;

 
$c

 
=

 
array_map("pokaz_po_Hiszpansku"

 
,

 
$a

 
,

 
$b)

 
;

 
print_r($c)

 
;

 
$d

 
=

 
array_map("mapuj_po_Hiszpansku"

 
,

 
$a

 
,

 
$b)

 
;

 
print_r($d)

 
;



Powyższy przykład wyświetli :

 
/

 
/

 
Zmienna

 
$c

 
Array

 
(

 
[0

 
]

 
=

 
The

 
number

 
1

 
is

 
called

 
uno

 
in

 
Spanish

 
[1

 
]

 
=

 
The

 
number

 
2

 
is

 
called

 
dos

 
in

 
Spanish

 
[2

 
]

 
=

 
The

 
number

 
3

 
is

 
called

 
tres

 
in

 
Spanish

 
[3

 
]

 
=

 
The

 
number

 
4

 
is

 
called

 
cuatro

 
in

 
Spanish

 
[4

 
]

 
=

 
The

 
number

 
5

 
is

 
called

 
cinco

 
in

 
Spanish

 
)

 
/

 
/

 
Zmienna

 
$d

 
Array

 
(

 
[0

 
]

 
=

 
Array

 
        (

 
[1

 
]

 
=

 
uno

 
        )

 
[1

 
]

 
=

 
Array

 
        (

 
[2

 
]

 
=

 
dos

 
        )

 
[2

 
]

 
=

 
Array

 
        (

 
[3

 
]

 
=

 
tres

 
        )

 
[3

 
]

 
=

 
Array

 
        (

 
[4

 
]

 
=

 
cuatro

 
        )

 
[4

 
]

 
=

 
Array

 
        (

 
[5

 
]

 
=

 
cinco

 
        )

 

)







Zazwyczaj używając dwóch lub więcej tablic , powinny one być równej długości , ponieważ funkcja zwrotna jest wykonywana na odpowiadających sobie elementach tablic . Jeśli tablice różnych długości , krótsze będą rozszerzane używając pustych elementów .

Interesującym sposobem użycia tej funkcji jest kontruowanie tablicy tablic , co może być łatwo przeprowadzone przez podanie NULL jako nazwy funkcji zwrotnej .

Przykład 3 . Tworzenie tablicy tablic

 
$a

 
=

 
array(

 
1

 
,

 
2

 
,

 
3

 
,

 
4

 
,

 
5)

 
;

 
$b

 
=

 
array("one"

 
,

 
"two"

 
,

 
"three"

 
,

 
"four"

 
,

 
"five")

 
;

 
$c

 
=

 
array("uno"

 
,

 
"dos"

 
,

 
"tres"

 
,

 
"cuatro"

 
,

 
"cinco")

 
;

 
$d

 
=

 
array("jeden"

 
,

 
"dwa"

 
,

 
"trzy"

 
,

 
"cztery"

 
,

 
"pięć")

 
;

 
$e

 
=

 
array_map(null

 
,

 
$a

 
,

 
$b

 
,

 
$c

 
,

 
$d)

 
;

 
print_r($e)

 
;



Powyższy przykład wyświetli :

 
Array

 
(

 
[0

 
]

 
=

 
Array

 
        (

 
[0

 
]

 
=

 
1

 
[1

 
]

 
=

 
one

 
[2

 
]

 
=

 
uno

 
[3

 
]

 
=

 
jeden

 
        )

 
[1

 
]

 
=

 
Array

 
        (

 
[0

 
]

 
=

 
2

 
[1

 
]

 
=

 
two

 
[2

 
]

 
=

 
dos

 
[3

 
]

 
=

 
dwa

 
        )

 
[2

 
]

 
=

 
Array

 
        (

 
[0

 
]

 
=

 
3

 
[1

 
]

 
=

 
three

 
[2

 
]

 
=

 
tres

 
[3

 
]

 
=

 
trzy

 
        )

 
[3

 
]

 
=

 
Array

 
        (

 
[0

 
]

 
=

 
4

 
[1

 
]

 
=

 
four

 
[2

 
]

 
=

 
cuatro

 
[3

 
]

 
=

 
cztery

 
        )

 
[4

 
]

 
=

 
Array

 
        (

 
[0

 
]

 
=

 
5

 
[1

 
]

 
=

 
five

 
[2

 
]

 
=

 
cinco

 
[3

 
]

 
=

 
pięć

 
        )

 

)







Patrz także : array_filter( ) , array_reduce( ) .