Rumah > pembangunan bahagian belakang > tutorial php > php中的array_map()函数细节

php中的array_map()函数细节

PHP中文网
Lepaskan: 2023-03-16 21:04:01
asal
1348 orang telah melayarinya

array_map 将回调函数作用到给定数组的单元上

array array_map ( callable $callback , array $arr1 [, array $... ] )
Salin selepas log masuk

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

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

callback 必需。对每个数组的每个元素作用的回调函数。

arr1 必需。将被回调函数(callback)执行的数组。

array 可选。将被回调函数(callback)执行的数组列表。

返回值

返回一个数组,该数组的每个元素都是数组(arr1)里面的每个元素经过回调函数(callback)处理了的。

实例:

<?php
 function cube ( $n )
{
  return( $n * $n * $n );
}
 
 $a = array( 1 , 2 , 3 , 4 , 5 );
 $b = array_map ( "cube" , $a );
 print_r ( $b );
 ?>
Salin selepas log masuk

输出结果:

<?php
    Array
    (
      [0] => 1
      [1] => 8
      [2] => 27
      [3] => 64
      [4] => 125
    )
?>
Salin selepas log masuk

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

<?php
function myfunction($v)
{
return($v*$v);
}
$a=array(1,2,3,4,5);
print_r(array_map("myfunction",$a));
?>
Salin selepas log masuk

定义和用法

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

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

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

myfunction 必需。用户自定义函数的名称,或者是 null。

array1 必需。规定数组。

array2 可选。规定数组。

array3 可选。规定数组。

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

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

<?php
    function myfunction($v)
    {
    if ($v==="Dog")
    {
    return "Fido";
    }
    return $v;
    }
    $a=array("Horse","Dog","Cat");
    print_r(array_map("myfunction",$a));
?>
Salin selepas log masuk

使用两个数组:

<?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));
?>
Salin selepas log masuk

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

<?php
    function myfunction($v) 
    {
    $v=strtoupper($v);
    return $v;
    }
    $a=array("Animal" => "horse", "Type" => "mammal");
    print_r(array_map("myfunction",$a));
?>
Salin selepas log masuk

将函数名赋值为 null 时:

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


Atas ialah kandungan terperinci php中的array_map()函数细节. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan