當前位置: 首頁> 函數類別大全> 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 可選。規定數組。
同類函數
  • 用回調函數比較數據來計算數組的差集 array_udiff

    array_udiff

    用回調函數比較數據來計算數組的差集
  • 計算數組的交集 array_intersect

    array_intersect

    計算數組的交集
  • 檢查給定的數組是否是一個列表 array_is_list

    array_is_list

    檢查給定的數組是否是一個列表
  • 返回數組中當前的鍵/值對並將數組指針向前移動一步-本函數已自PHP 7.2.0 起廢棄。強烈建議不要使用本函數。 each

    each

    返回數組中當前的鍵/值對並將數組指針向前
  • 移除數組中重複的值 array_unique

    array_unique

    移除數組中重複的值
  • 對多個數組或多維數組進行排序 array_multisort

    array_multisort

    對多個數組或多維數組進行排序
  • 使用傳遞的數組遞歸替換第一個數組的元素 array_replace_recursive

    array_replace_recursive

    使用傳遞的數組遞歸替換第一個數組的元素
  • 用回調函數比較鍵名來計算數組的交集 array_intersect_ukey

    array_intersect_ukey

    用回調函數比較鍵名來計算數組的交集