En fait tu obtiens ça parce que array_intersect($array1, $array2) renvoie toutes les valeurs de $array1 qui sont présentes dans $array2. Donc si une même valeur se trouve plusieurs fois dans $array1, il suffit qu'elle se trouve ne serait-ce qu'une fois dans $array2 pour que array_instersect les renvoie toutes.
Pour pallier au problème il suffit de s'assurer que les valeurs du premier tableau sont uniques en appliquant la fonction array_unique:
var_dump(array_intersect(array_unique($output_a[0]), $output_b[0]));
Partager