array_udiff_uassoc

creationdev

Documentation

Référencement web optimisé
Référencement web optimisé

500$ CAD

Conception web extra
Conception web extra

5000$ CAD

Formation référencement web
Formation référencement web

100$ CAD

Référencement web expert
Référencement web expert

750$ CAD

Référencement web stratégique
Référencement web stratégique

1000$ CAD

Référencement web organique
Référencement web organique

300$ CAD

Conception web microsite
Conception web microsite

1000$ CAD

Conception web standard
Conception web standard

2500$ CAD

Conception d'application web
Conception d'application web

100$ CAD

Conception web ecommerce
Conception web ecommerce

2500$ CAD

Fonction

Fonction

array_udiff_uassoc

array_udiff_uassoc

Page Vue 15 nov. 2018
Page Vue 26 fois

(PHP 5, PHP 7, PHP 8)

array_udiff_uassoc — Calcule la différence de deux tableaux associatifs, compare les données et les index avec une fonction de rappel

Description

array_udiff_uassoc(
    array $array,
    array ...$arrays,
    callable $value_compare_func,
    callable $key_compare_func
): array

Calcule la différence de deux tableaux associatifs, compare les données et les index avec une fonction de rappel.

Notez que les clés sont utilisées dans les comparaisons contrairement à array_diff() et array_udiff().

Liste de paramètres

array

Le premier tableau.

arrays

Tableaux à comparer contre

value_compare_func

La fonction de comparaison doit retourner un entier inférieur à, égal à, ou supérieur à 0 si le premier argument est considéré comme, respectivement, inférieur à, égal à, ou supérieur au second.

callback(mixed $a, mixed $b): int Attention

Retourner des valeurs non-entières à partir de la fonction de comparaison, telles que float, entraînera une conversion interne de la valeur de retour du rappel en int. Ainsi, des valeurs telles que 0.99 et 0.1 seront toutes deux converties en une valeur entière de 0, ce qui comparera de telles valeurs comme égales.

key_compare_func

La comparaison des clés (indices) est effectuée par la fonction de rappel key_compare_func. Ce comportement est différent de celui de array_udiff_assoc(), vu que cette dernière utilise une fonction interne pour comparer les indices.

Valeurs de retour

Retourne un tableau contenant toutes les valeurs du tableau array qui ne sont pas présentes dans aucun autre argument.

Exemples

Exemple #1 Exemple avec array_udiff_uassoc()

<?php
class cr {
private $priv_member;
function __construct($val)
{
$this->priv_member = $val;
}

static function comp_func_cr($a, $b)
{
if ($a->priv_member === $b->priv_member) return 0;
return ($a->priv_member > $b->priv_member)? 1:-1;
}

static function comp_func_key($a, $b)
{
if ($a === $b) return 0;
return ($a > $b)? 1:-1;
}
}
$a = array("0.1" => new cr(9), "0.5" => new cr(12), 0 => new cr(23), 1=> new cr(4), 2 => new cr(-15),);
$b = array("0.2" => new cr(9), "0.5" => new cr(22), 0 => new cr(3), 1=> new cr(4), 2 => new cr(-15),);

$result = array_udiff_uassoc($a, $b, array("cr", "comp_func_cr"), array("cr", "comp_func_key"));
print_r($result);
?>

L'exemple ci-dessus va afficher :

Array
(
    [0.1] => cr Object
        (
            [priv_member:private] => 9
        )

    [0.5] => cr Object
        (
            [priv_member:private] => 12
        )

    [0] => cr Object
        (
            [priv_member:private] => 23
        )
)

Dans notre exemple, vous voyez que la paire "1" => new cr(4) est présente dans les deux tableaux et donc, absente du tableau résultant. Gardez en tête que vous devez fournir deux fonctions de rappel.

Notes

Note: Notez que cette fonction ne vérifie qu'une seule dimension d'un tableau multidimensionnel. Vous pouvez, bien sûr, tester une dimension particulière en utilisant par exemple array_udiff_uassoc($array1[0], $array2[0], "data_compare_func", "key_compare_func");.

Voir aussi

  • array_diff() - Calcule la différence entre des tableaux
  • array_diff_assoc() - Calcule la différence de deux tableaux, en prenant aussi en compte les clés
  • array_udiff() - Calcule la différence entre deux tableaux en utilisant une fonction rappel
  • array_udiff_assoc() - Calcule la différence entre des tableaux avec vérification des index, compare les données avec une fonction de rappel
  • array_intersect() - Calcule l'intersection de tableaux
  • array_intersect_assoc() - Calcule l'intersection de deux tableaux avec des tests sur les index
  • array_uintersect() - Calcule l'intersection de deux tableaux, compare les données en utilisant une fonction de rappel
  • array_uintersect_assoc() - Calcule l'intersection de deux tableaux avec des tests sur l'index, compare les données en utilisant une fonction de rappel
  • array_uintersect_uassoc() - Calcule l'intersection de deux tableaux avec des tests sur l'index, compare les données et les index des deux tableaux en utilisant une fonction de rappel séparée


Source : http://www.php.net/
Ref : fonction-array-udiff-uassoc.php




Contact

Contact

Veuillez saisir les infos dans le formulaire d'identification
suivant pour concevoir et référencer votre site.









Veuillez saisir votre message.

Carte d'affaires

Affichage de la carte d'affaires recto/verso.

Carte d'affaires recto
Carte d'affaires verso

Partagez

Partagez

Discussion ayant comme sujet la page array_udiff_uassoc.

©2025 creationdev -  F.A.Q. -  Soutien -  Haut de page
THÈMES: