PHP array_map() functie

Voorbeeld

Voer de functie uit op elke waarde in het array, elke waarde wordt vermenigvuldigd met zichzelf en retourneer een array met nieuwe waarden:

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

Lopende voorbeelden

Definitie en gebruik

De array_map() functie voert de door de gebruiker gedefinieerde functie uit op elke waarde in het array en retourneert een array met nieuwe waarden.

Het aantal parameters dat de callback-functie aanneemt moet overeenkomen met het aantal arrays dat aan de array_map() functie wordt doorgegeven.

Tip:Je kunt een of meerdere arrays invoeren naar de functie.

Syntax

array_map(myfunction,array1,array2,array3...)
Parameters Beschrijving
myfunction Verplicht. De naam van de door de gebruiker gedefinieerde functie, of null.
array1 Verplicht. Bepaal het array.
array2 Optioneel. Bepaal het array.
array3 Optioneel. Bepaal het array.

Technische details

Retournerde waarde: Retourner een array die bevat array1 waardenarray, na het toepassen van een aangepaste functie op elke waarde.
PHP Versie: 4.0.6+

Meer voorbeelden

Voorbeeld 1

Gebruik een gebruikersdefinieerde functie om de waarden van het array te wijzigen:

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

Lopende voorbeelden

Voorbeeld 2

Gebruik twee arrays:

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

Lopende voorbeelden

Voorbeeld 3

Maak alle letters in de waarden van het array hoofdletter:

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

Lopende voorbeelden

Voorbeeld 4

Wanneer de functienaam wordt toegewezen aan null:

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

Lopende voorbeelden