ARRAY_DIFF_ASSOC |
Différente associations des tableaux |
PHP 4.3.0+ |
Syntaxe
function array_diff_assoc($tableau,$tableau[,...]);
|
Paramètres
Nom |
Description |
$tableau |
Ce paramètre permet d'indiquer les tableaux à comparer |
Retour
Valeur |
Description |
Tableau |
Ce type de données permet d'indiquer la liste des clefs et valeurs n'étant pas identique entre les tableaux spécifiés |
Description
Cette fonction permet de retourner un tableau indiquant la liste des combinaisons de clefs et de valeurs n'étant pas identique dans les autres tableaux spécifié en tenant compte des clefs.
Remarques
- But principal : La fonction array_diff_assoc compare deux tableaux ou plus et retourne les éléments du premier tableau n'étant pas présents dans les autres.
Contrairement à array_diff, elle prend en compte à la fois les valeurs et les clefs associées dans la comparaison.
- Comparaison stricte des clefs : Les clefs des tableaux sont comparées strictement (===), ce qui signifie que leur type doit correspondre exactement. Par exemple,
une clef "1" (chaîne de caractères) sera considérée différente d'une clef 1 (entier).
- Clés préservées : Les clés du tableau retourné sont conservées telles qu'elles étaient dans le tableau de référence. Cela permet de garder le contexte ou les associations entre les clés et les valeurs après la comparaison.
- Comparaison des valeurs : Les valeurs des tableaux sont également comparées strictement (===), ce qui signifie que les types des valeurs doivent correspondre
pour être considérés comme identiques. Cela permet d'éviter des équivalences inattendues comme 0 == "0".
- Ordre des paramètres : Le premier tableau est utilisé comme référence, et les tableaux suivants servent à exclure les correspondances. Si les paramètres sont
inversés, le résultat peut être complètement différent.
- Utilisation avec des tableaux multidimensionnels : La fonction ne traite pas les tableaux imbriqués de manière récursive. Si des tableaux imbriqués sont présents,
ils seront comparés uniquement en tant qu'objets globaux, sans comparer leurs sous-éléments.
- Cas des tableaux vides : Si le premier tableau est vide, le résultat sera toujours un tableau vide, quelle que soit la taille des autres tableaux. Cependant,
si les tableaux de comparaison sont vides, toutes les paires clef-valeur du premier tableau seront retournées.
- Applications courantes : array_diff_assoc est particulièrement utile pour détecter des différences précises dans des tableaux associatifs, comme des
données d'API, des configurations ou des structures d'objets où les clefs et les valeurs doivent être prises en compte.
Dernière mise à jour : Dimanche, le 22 mars 2015