La fonction in_array() de PHP, conçue pour vérifier l'existence de valeurs, a une limitation lorsqu'il s'agit de vérifier plusieurs valeurs simultanément. Cet article vise à relever ce défi, en présentant des solutions pour les deux scénarios :
Vérification de la présence de toutes les valeurs
Pour déterminer si un tableau contient tous les éléments d'un autre tableau, utilisez l'approche suivante :
<code class="php">$haystack = array(...); $target = array('foo', 'bar'); if (count(array_intersect($haystack, $target)) == count($target)) { // all of $target is in $haystack }</code>
La fonction d'intersection trouve les éléments communs entre deux tableaux, et comparer son nombre à la taille du tableau cible garantit que toutes les valeurs cibles sont présentes dans la botte de foin.
Vérification de la présence d'une valeur
En revanche, pour vérifier si le tableau de botte de foin contient au moins une valeur du tableau cible, utilisez la syntaxe suivante :
<code class="php">if (count(array_intersect($haystack, $target)) > 0) { // at least one of $target is in $haystack }</code>
Ici, nous vérifions si le nombre d'intersections est supérieur à zéro, indiquant qu'au moins une valeur du tableau cible est présente dans la botte de foin.
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!