PHP array_map() 函數
實例
將函數作用到數組中的每個值上,每個值都乘以本身,并返回帶有新值的數組:
<?php function myfunction($v) { return($v*$v); } $a=array(1,2,3,4,5); print_r(array_map("myfunction",$a)); ?>
定義和用法
array_map() 函數將用戶自定義函數作用到數組中的每個值上,并返回用戶自定義函數作用后的帶有新值的數組。
回調函數接受的參數數目應該和傳遞給 array_map() 函數的數組數目一致。
提示:您可以向函數輸入一個或者多個數組。
語法
array_map(myfunction,array1,array2,array3...)
參數 | 描述 |
---|---|
myfunction | 必需。用戶自定義函數的名稱,或者是 null。 |
array1 | 必需。規定數組。 |
array2 | 可選。規定數組。 |
array3 | 可選。規定數組。 |
技術細節
返回值: | 返回包含 array1 的值的數組,在向每個值應用自定義函數后。 |
PHP 版本: | 4.0.6+ |
更多實例
例子 1
使用用戶自定義函數來改變數組的值:
<?php function myfunction($v) { if ($v==="Dog") { return "Fido"; } return $v; } $a=array("Horse","Dog","Cat"); print_r(array_map("myfunction",$a)); ?>
例子 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)); ?>
例子 3
將數組中值的所有字母改為大寫:
<?php function myfunction($v) { $v=strtoupper($v); return $v; } $a=array("Animal" => "horse", "Type" => "mammal"); print_r(array_map("myfunction",$a)); ?>
例子 4
將函數名賦值為 null 時:
<?php $a1=array("Dog","Cat"); $a2=array("Puppy","Kitten"); print_r(array_map(null,$a1,$a2)); ?>