Fonction array_intersect_ukey() en PHP

Exemple

Comparer les noms de clé de deux tableaux (utiliser une fonction personnalisée pour comparer les noms de clé) et renvoyer l'intersection :

<?php
function myfunction($a,$b)
{
if ($a===$b)
  {
  return 0;
  }
  return ($a>$b)?1:-1;
}
$a1=array("a"=>"red","b"=>"green","c"=>"blue");
$a2=array("a"=>"bleu","b"=>"noir","e"=>"bleu");
$result=array_intersect_ukey($a1,$a2,"myfunction");
print_r($result);
?>

Exemple de fonctionnement

Définition et utilisation

La fonction array_intersect_ukey() est utilisée pour comparer les noms de clé de deux (ou plusieurs) tableaux et renvoie l'intersection.

Remarque :Cette fonction utilise une fonction personnalisée de l'utilisateur pour comparer les noms de clé !

Cette fonction compare les noms de clé de deux (ou plusieurs) tableaux et renvoie un tableau d'intersection, qui contient toutes les clés présentes dans les tableaux comparés (array1) et également dans n'importe quel autre tableau de paramètres (array2 ou array3 etc.) des noms de clé.

Explication

La fonction array_intersect_ukey() utilise une fonction de rappel pour comparer les noms de clé et calcule l'intersection des tableaux.

array_intersect_ukey() renvoie un tableau contenant toutes les clés présentes array1 les valeurs des clés présentes à la fois dans l'ensemble des autres tableaux de paramètres.

Cette comparaison est effectuée par une fonction de rappel fournie par l'utilisateur. Cette fonction prend deux paramètres, à savoir les noms de clé à comparer. Si le premier paramètre est inférieur au second, la fonction doit renvoyer un nombre négatif, si les deux paramètres sont égaux, elle doit renvoyer 0, et si le premier paramètre est supérieur au second, elle doit renvoyer un nombre positif.

grammaire

array_intersect_ukey(array1,array2,array3...myfunction)
Paramètres Description
array1 Obligatoire. Premier tableau à comparer avec d'autres tableaux.
array2 Obligatoire. Tableau à comparer avec le premier tableau.
array3,... Facultatif. Autres tableaux à comparer avec le premier tableau.
myfunction Obligatoire. Définit la chaîne de caractères de la fonction de comparaison appelable. Si le premier paramètre est inférieur, égal ou supérieur au second paramètre, la fonction de comparaison doit retourner un entier inférieur, égal ou supérieur à 0.

Détails techniques

Valeur de retour : Retourne un tableau d'intersection qui contient toutes les clés de tous les tableaux comparés (array1) et également dans n'importe quel autre tableau de paramètres (array2 ou array3 etc.) des noms de clé.
Version PHP : 5.1.0+

Plus d'exemples

Exemple 1

Comparaison des noms de clé de trois tableaux (utilisez une fonction utilisateur personnalisée pour comparer les noms de clé) et retourne l'intersection :

<?php
function myfunction($a,$b)
{
if ($a===$b)
  {
  return 0;
  }
  return ($a>$b)?1:-1;
}
$a1=array("a"=>"red","b"=>"green","c"=>"blue");
$a2=array("a"=>"black","b"=>"yellow","d"=>"brown");
$a3=array("e"=>"purple","f"=>"white","a"=>"gold");
$result=array_intersect_ukey($a1,$a2,$a3,"myfunction");
print_r($result);
?>

Exemple de fonctionnement