複製代碼 代碼如下:/*函數array_map()函數:多數組回呼函數---將回呼函數作用到給定數組的單元上
* 1、文法:array array_map ( callback callback, array arr1 [, array ...] )
* 2、描述:返回一個數組,該數組包含了 arr1 中的所有單元經過 callback 作用過之後的
* 單元。callback 接受的參數數目應該和傳遞給 array_map() 函數的數組數目一致。
* 3、注意事項:
* 3.1、多數組回呼函數作用於一個數組時,將保留原有數組的鍵名,也就是返回的數組的鍵名就是
* 作用到給定數組的鍵名
* 3.2、多數組回到函數作用於兩個或多個數組時,他們的長度要一致,並且將忽略原來多個數組的
* 鍵名,統一分配數字索引作為鍵名
*/
//單個數組使用的例子
$websites=array("g"=>"google","b"=>"baidu","y"=>"yahoo");
//輸出原數組
echo "<pre>";
print_r($websites);
echo "</pre>";
//定義對單個數組處理的回呼函數
function change_value($value){
return ucfirst($value).".com";
}
$urls=array_map('change_value',$websites);
echo "<pre>";
print_r($urls);
echo "</pre>";
//多個數組使用的例子
$arr1=array(1,3,5,7);
$arr2=array(2,4,6,8);
//定義對多個數組處理的回呼函數
function func1($a,$b){
return $a*$b;
}
$results=array_map('func1',$arr1,$arr2);
echo "利用回呼函數對多個數組處理後,返回的結果:<br>";
echo "<pre>";
print_r($results);
echo "</pre>";
運行效果如下: