当前位置: 首页> 函数类别大全> array_map

array_map

为数组的每个元素应用回调函数
名称:array_map
分类:数组
所属语言:php
一句话介绍:把数组中的每个值发送到用户自定义函数,返回新的值。

定义和用法

array_map() 函数将用户自定义函数作用到数组中的每个值上,并返回用户自定义函数作用后的带有新值的数组。

回调函数接受的参数数目应该和传递给 array_map() 函数的数组数目一致。

提示:您可以向函数输入一个或者多个数组。

实例

例子 1

将函数作用到数组中的每个值上,每个值都乘以本身,并返回带有新值的数组:

<?php
function myfunction($v)
{
  return($v*$v);
}

$a=array(1,2,3,4,5);
print_r(array_map("myfunction",$a));
?>

亲自试一试

例子 2

使用用户自定义函数来改变数组的值:

<?php
function myfunction($v)
{
if ($v==="Dog")
  {
  return "Fido";
  }
return $v;
}

$a=array("Horse","Dog","Cat");
print_r(array_map("myfunction",$a));
?>

亲自试一试

例子 3

使用两个数组:

<?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));
?>

亲自试一试

例子 4

将数组中值的所有字母改为大写:

<?php
function myfunction($v)
{
$v=strtoupper($v);
  return $v;
}

$a=array("Animal" => "horse", "Type" => "mammal");
print_r(array_map("myfunction",$a));
?>

亲自试一试

例子 5

将函数名赋值为 null 时:

<?php
$a1=array("Dog","Cat");
$a2=array("Puppy","Kitten");
print_r(array_map(null,$a1,$a2));
?>

亲自试一试

语法

array_map(myfunction,array1,array2,array3...)
参数 描述
myfunction 必需。用户自定义函数的名称,或者是 null。
array1 必需。规定数组。
array2 可选。规定数组。
array3 可选。规定数组。
同类函数
  • 从数组中将变量导入到当前的符号表 extract

    extract

    从数组中将变量导入到当前的符号表
  • 用“自然排序”算法对数组排序 natsort

    natsort

    用“自然排序”算法对数组排序
  • 使用传递的数组递归替换第一个数组的元素 array_replace_recursive

    array_replace_recursive

    使用传递的数组递归替换第一个数组的元素
  • 带索引检查计算数组的交集,用回调函数比较索引 array_intersect_uassoc

    array_intersect_uassoc

    带索引检查计算数组的交集,用回调函数比较
  • 统计数组中各个的值的个数 array_count_values

    array_count_values

    统计数组中各个的值的个数
  • 用回调函数比较数据来计算数组的差集 array_udiff

    array_udiff

    用回调函数比较数据来计算数组的差集
  • 从关联数组中取得键名 key

    key

    从关联数组中取得键名
  • 使用用户定义的比较函数按值对数组进行排序 usort

    usort

    使用用户定义的比较函数按值对数组进行排序