bonjour,
j'ai deux variables qui sont des tableaux associatifs : $args["rsold"] et $args["rsnew"] .
je cherche à savoir si ils sont différents MAIS uniquement sur les clés (nom de champ) qui contiennent le mot 'grp'
par exemple :
mon 1er tableau
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 $args["rsold"]["meteo"]="il pleut"; $args["rsold"]["etu_grp1_id"]=11; $args["rsold"]["etu_grp2_id"]=22; $args["rsold"]["maj"]="2023";
mon second tableau :
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 $args["rsnew"]["etu_grp1_id"]=11; $args["rsnew"]["etu_grp2_id"]=22; $args["rsnew"]["lib"]="2023"; $args["rsnew"]["nom"]="toto";
On voit bien que les champs de grp1 et grp2 sont identiques dans les 2 tableaux même si les deux tableaux ont des champs en plus. c'est cette "égalité" des champs-valeurs "grp" que je cherche à déterminer.
il existe la fonction php array_intersect et array_intersect_assoc mais elles ne permettent pas de "choisir" ni filtrer les clés de comparaisons.
J'aimerai pouvoir dire aux fonctions intersect : "si la clé contient pas le mot 'grp', alors ne la compare pas.
y-a-t-il un moyen de faire ça ? j'ai vu qu'il y a la fonction array_intersect_uassoc qui permet de travailler la comparaison avec une fonction perso, mais cette dernière ne travaille que sur la valeur et non pas sur le nom de la clé.... donc je suis coincé....
avez-vous une idée ?
Partager