將函數作用到陣列中的每個值上,每個值都乘以本身,並傳回帶有新的值的陣列:
<?phpfunction myfunction($v){ return($v*$v);}$a=array(1,2,3,4,5);print_r(array_map("myfunction",$a));?>array_map() 函數將使用者自訂函數作用到陣列中的每個值上,並傳回使用者自訂函數作用後的帶有新的值的陣列。
提示:您可以向函數輸入一個或多個陣列。
array_map( myfunction,array1,array2,array3 ...)
| 參數 | 描述 |
|---|---|
| myfunction | 必需。使用者自訂函數的名稱,或是null。 |
| array1 | 必需。規定數組。 |
| array2 | 可選。規定數組。 |
| array3 | 可選。規定數組。 |
| 傳回值: | 傳回包含使用者自訂函數作用後的array1的值的陣列。 |
|---|---|
| PHP 版本: | 4.0.6+ |
使用一個使用者自訂函數來改變數組的值:
<?phpfunction myfunction($v){if ($v==="Dog") { return "Fido"; }return $v;}$a=array("Horse","Dog","Cat"); print_r(array_map("myfunction",$a));?>使用兩個數組:
<?phpfunction 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));?>將數組中值的所有字母改為大寫:
<?phpfunction myfunction($v) {$v=strtoupper($v); return $v;}$a=array("Animal" => "horse", "Type" => "mammal");print_r(array_map ("myfunction",$a));?>將函數名賦值為null 時:
<?php$a1=array("Dog","Cat");$a2=array("Puppy","Kitten");print_r(array_map(null,$a1,$a2));?>