PHP array_map() Funktion

Beispiel

Wendet die Funktion auf jeden Wert im Array an, multipliziert jeden Wert mit sich selbst und gibt ein Array mit den neuen Werten zurück:

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

运行实例

Definition und Verwendung

Die array_map()-Funktion wendet eine benutzerdefinierte Funktion auf jeden Wert im Array an und gibt ein Array mit den neuen Werten zurück.

Die Anzahl der Parameter, die der Callback-Funktion übergeben werden, muss mit der Anzahl der an die array_map()-Funktion übergebenen Arrays übereinstimmen.

Hinweis:Sie können eine oder mehrere Arrays an die Funktion übergeben.

Syntax

array_map(myfunction,array1,array2,array3...)
Parameter Beschreibung
myfunction Erforderlich. Der Name einer benutzerdefinierten Funktion oder null.
array1 Erforderlich. Definiert ein Array.
array2 Optional. Definiert ein Array.
array3 Optional. Definiert ein Array.

Technische Details

Rückgabewert: Rückgabe eines Arrays array1 的值的数组,在向每个值应用自定义函数后。
PHP 版本: 4.0.6+

更多实例

例子 1

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

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

运行实例

例子 2

使用两个数组:

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

运行实例

例子 3

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

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

运行实例

例子 4

当将函数名赋值为 null 时:

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

运行实例