PHP:array_map遍歷元素並調用函數

最近更新時間 2020-01-25 14:35:12

array_map() 函數對數組的每個元素應用回調函數。

定義

array_map ( callable $callback , array $array1 [, array $... ] ) : array

返回數組,為 $array1 每個元素調用 callback 方法,並返回新數組。函數參數的數量跟數組的數量必須一樣。

示例 

計算元素乘積 

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

$a = array(1, 2, 3, 4, 5);
print_r(array_map("callback", $a));
Array
(
  [0] => 1
  [1] => 4
  [2] => 9
  [3] => 16
  [4] => 25
)

比較兩個數組的元素是否相等

<?php
function fun($v1, $v2)
{
  if ($v1===$v2)
  {
    return "same";
  }
  return "different";
}

$a1=array("Horse", "Dog", "Cat");
$a2=array("Cow", "Dog", "Rat");
print_r(array_map("fun", $a1, $a2));
Array
(
  [0] => different
  [1] => same
  [2] => different
)

回調函數為空 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
  )
)
rss_feed