定义和用法
array_map() 函数返回用户自定义函数作用后的数组。回调函数接受的参数数目应该和传递给 array_map() 函数的数组数目一致。
语法
array_map(function,array1,array2,array3...)
参数 | 描述 |
---|---|
function | 必需。用户自定义函数的名称,或者是 null。 |
array1 | 必需。规定数组。 |
array2 | 可选。规定数组。 |
array3 | 可选。规定数组。 |
例子 1
<?php
function myfunction($v) {
if ($v === "Dog") {
return "Fido";
}
return $v;
} $a = array("Horse", "Dog", "Cat");
print_r(array_map("myfunction", $a));
?>
输出:
Array ( [0] => Horse [1] => Fido [2] => Cat )
例子 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));
?>
输出:
Array ( [0] => different [1] => same [2] => different )
例子 3
请看当自定义函数名设置为 null 时的情况:
<?php
$a1 = array("Dog", "Cat");
$a2 = array("Puppy", "Kitten");
print_r(array_map(null, $a1, $a2));
?>
输出:
Array (
[0] => Array ( [0] => Dog [1] => Puppy )
[1] => Array ( [0] => Cat [1] => Kitten )
)