Maison >développement back-end >tutoriel php >Trois façons d'implémenter la fonction array_diff() en PHP pour comparer les différences de tableaux
Ce que cet article vous apporte concerne les trois méthodes d'implémentation de la fonction array_diff() en PHP pour comparer les différences de tableaux. J'espère qu'il a une certaine valeur de référence. vous aidera.
Ce qui suit est une brève introduction à la fonction array_diff() qui compare la différence entre deux tableaux en PHP.
Il existe un array_diff() dans la fonction intégrée PHP : cela signifie comparer les valeurs clés de deux tableaux et renvoyer la différence.
Ce qui suit consiste à implémenter la différence définie via le parcours de tableau :
Il y a d'abord deux tableaux différents $arr_1, $arr_2 :
Une méthode :
function fun($arr_1,$arr_2) { foreach ($arr_1 as $key => $val) { $bool = false; foreach ($arr_2 as $k => $v) { if($bool = ($val == $v)) { break; } } if(!$bool) { $diff[$key] = $val; } } }
Bien que cette méthode puisse réaliser la différence entre les tableaux, si la longueur du tableau atteint une certaine longueur, l'efficacité n'est pas optimiste.
Deux méthodes :
foreach ($arr_1 as $key => $val) { if(in_array($val,$arr_2)) { unset($arr_1[$key]); } }
Cette méthode est dite sur d'autres blogs comme étant comparable à array_diff().
Trois façons :
Après avoir inversé la valeur de la clé du tableau arr_2 via "array_flip();", déterminez si la valeur du tableau arr_1 est dans la clé de arr_2
$arr_2 = array_flip($arr_2); foreach ($arr_1 as $key => $val) { if(isset($arr_2[$val])) { unset($arr_1[$key]); } }
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!