【函数功能】
该函数将用户自定义函数作用到数组中的每个值上,并返回用户自定义函数作用后的带有新值的数组。
【函数语法】
array_map ($callback, array $array1, array $_ = null)
【参数说明】
$callback:必需,用户自定义函数的名称,或者是 null。
$array1:必需,规定数组。
$_ :可选。规定数组。
【演示程序】
<?php
/**
* array_map ($callback, array $array1, array $_ = null)
* **/
function squar1($a){
return $a*$a;
}
$array1 = array(1,2,3,4);
$rst = array_map("squar1", $array1);
var_dump($rst);
function squar2($a,$b){
return $a*$b;
}
$array2 = array(5,6,7,8);
$rst = array_map("squar2", $array1, $array2);
var_dump($rst);
?>
【输出结果】
array(4) {
[0]=>
int(1)
[1]=>
int(4)
[2]=>
int(9)
[3]=>
int(16)
}
array(4) {
[0]=>
int(5)
[1]=>
int(12)
[2]=>
int(21)
[3]=>
int(32)
}
【特别注意】
1.回调函数接受的参数数目应该和传递给 array_map() 函数的数组数目一致。
2.当回调函数为空是,返回原数组,若有多个数组,则将返回二维数组,按照顺序将原数组中的值组成一维数组,不管键相同与否,只与顺序有关,二维数组元素个数与传入数组最长个数为准,不够的以null填补。
3.PHP 版本:4.0.6+。
【原版定义】
/**
* Applies the callback to the elements of the given arrays
* @link http://www.php.net/manual/en/function.array-map.php
* @param callback callable <p>
* Callback function to run for each element in each array.
* </p>
* @param array1 array <p>
* An array to run through the callback function.
* </p>
* @param _ array[optional]
* @return array an array containing all the elements of array1
* after applying the callback function to each one.
*/
转载请注明出处:php1234.cn ,原文地址:http://php1234.cn/a/functions/2016/1210/158.html