188 of 410 menu

Fonction array_uintersect

La fonction array_uintersect calcule l'intersection de tableaux en utilisant une fonction de rappel pour la comparaison des valeurs. Elle retourne un tableau contenant tous les éléments du premier tableau qui sont présents dans tous les autres tableaux. La comparaison des valeurs s'effectue via une fonction de rappel définie par l'utilisateur.

Syntaxe

array_uintersect(array $array1, array $array2, ..., callable $value_compare_func): array;

Exemple

Trouvons l'intersection de deux tableaux en comparant leurs valeurs à l'aide d'une fonction de rappel :

<?php $array1 = [1, 2, 3, 4, 5]; $array2 = [2, 4, 6, 8, 10]; $res = array_uintersect($array1, $array2, function($a, $b) { if ($a === $b) { return 0; } return ($a > $b) ? 1 : -1; }); print_r($res); ?>

Résultat de l'exécution du code :

[2, 4]

Exemple

Comparaison de tableaux de chaînes de caractères à l'aide d'une fonction personnalisée :

<?php $array1 = ['a', 'b', 'c', 'd', 'e']; $array2 = ['b', 'd', 'f', 'h', 'j']; $res = array_uintersect($array1, $array2, function($a, $b) { return strcmp($a, $b); }); print_r($res); ?>

Résultat de l'exécution du code :

['b', 'd']

Voir aussi

  • la fonction array_intersect,
    qui calcule l'intersection de tableaux
  • la fonction array_intersect_assoc,
    qui calcule l'intersection de tableaux avec une vérification supplémentaire des index
  • la fonction array_uintersect_assoc,
    qui calcule l'intersection de tableaux avec une vérification supplémentaire des index, en utilisant une fonction de rappel
Français
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Nous utilisons des cookies pour le fonctionnement du site, l'analyse et la personnalisation. Le traitement des données est effectué conformément à la Politique de confidentialité.
accepter tout personnaliser refuser