PHP array_map() -funktio
Esimerkki
Sovelta funktiota taulukon jokaiseen arvoon, jokainen arvo kertoo itsensä, ja palauta uusilla arvoilla varustettu taulukko:
<?php function myfunction($v) { return($v*$v); } $a=array(1,2,3,4,5); print_r(array_map("myfunction",$a)); ?>
Määrittely ja käyttötapa
array_map() -funktio soveltaa käyttäjän määrittämää funktiota taulukon jokaiseen arvoon ja palauttaa uusilla arvoilla varustetun taulukon.
Paluufunktion hyväksymien parametrien määrän täytyy olla sama kuin array_map() -funktioon annettujen taulukkojen määrä.
Vinkki:Voit antaa funktion yhden tai useamman taulukon.
Syntaksi
array_map(myfunction,array1,array2,array3...)
Parametrit | Kuvaus |
---|---|
myfunction | Välttämätön. Käyttäjän määrittämä funktion nimi tai null. |
array1 | Välttämätön. Määritä taulukko. |
array2 | Valinnainen. Määritä taulukko. |
array3 | Valinnainen. Määritä taulukko. |
Tekninen yksityiskohta
Palautusarvo: | Palauttaa sisältävän array1 arvon taulukko, jossa jokaiselle arvolle on sovellettu mukautettu funktio. |
PHP Versio: | 4.0.6+ |
更多实例
esimerkki 1
使用用户自定义函数来改变数组的值:
<?php function myfunction($v) { if ($v==="Dog") { return "Fido"; } return $v; } $a=array("Horse","Dog","Cat"); print_r(array_map("myfunction",$a)); ?>
esimerkki 2
使用两个数组:
<?php function myfunction($v1,$v2) { if ($v1===$v2) { return "same"; } return "different"; } $a1=array("Horse","Dog","Cat"); $a2=array("Cow","Dog","Rat"); print_r(array_map("myfunction",$a1,$a2)); ?>
esimerkki 3
将数组中值的所有字母改为大写:
<?php function myfunction($v) { $v=strtoupper($v); return $v; } $a=array("Animal" => "horse", "Type" => "mammal"); print_r(array_map("myfunction",$a)); ?>
esimerkki 4
当将函数名赋值为 null 时:
<?php $a1=array("Dog","Cat"); $a2=array("Puppy","Kitten"); print_r(array_map(null,$a1,$a2)); ?>