PHP array_map() 函数

返回上一级

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

( PHP >= 4.0.6 )

函数原型

array_map( myfunction,array1,array2,array3 ...)

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

参数

参数 描述
myfunction 必需。用户自定义函数的名称,或者是 null
array1 必需。规定数组
array2 可选。规定数组
array3 可选。规定数组

返回值

返回包含用户自定义函数作用后的 array1 的值的数组

范例

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

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

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

运行范例 »

运行以上 PHP 范例,输出结果如下

Array ( [0] => 1 [1] => 4 [2] => 9 [3] => 16 [4] => 25 )

范例 2

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

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

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

运行范例 »

运行以上 PHP 范例,输出结果如下

Array ( [0] => Horse [1] => Fido [2] => Cat )

范例 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));

运行范例 »

运行以上 PHP 范例,输出结果如下

Array ( [0] => different [1] => same [2] => different )

范例 4

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

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

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

运行范例 »

运行以上 PHP 范例,输出结果如下

Array ( [Animal] => HORSE [Type] => MAMMAL )

范例 5

将函数名赋值为 null 时

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

运行范例 »

运行以上 PHP 范例,输出结果如下

Array ( [0] => Array ( [0] => Dog [1] => Puppy ) [1] => Array ( [0] => Cat [1] => Kitten ) )

返回上一级

PHP 5 函数参考手册

关于   |   FAQ   |   我们的愿景   |   广告投放   |  博客

  简单教程,简单编程 - IT 入门首选站

Copyright © 2013-2018 简单教程 twle.cn All Rights Reserved.