Description
On vient de voir comment vérifier si une collection contenait un item. Grâce à la méthode contains(). Tu as déjà vu qu'elle était pointilleuse sur la casse dans tes recherches (en gros, elle fait la différence entre majuscules et minuscules).
A présent, tu vas découvrir sa soeur (presque) jumelle qui est encore plus maniaque qu'elle.
containsStrict() est sensible à la casse également, mais en plus elle compare selon le mode strict.
Exemple d'utilisation
Prenons un exemple simple, tu as sur ton CV plusieurs langages à mettre en valeur et tu dois associer à chacun un niveau qui reflète ton expérience avec ce langage.
Code source #1 : Booléen avec booléen, tu passes !
1$oneorzero = collect([2 true,3 false4]);56echo "<h1>Contains strict example</h1>" . PHP_EOL;7$result = $oneorzero->containsStrict(false);8var_dump ($result);1$oneorzero = collect([2 true,3 false4]);56echo "<h1>Contains strict example</h1>" . PHP_EOL;7$result = $oneorzero->containsStrict(false);8var_dump ($result);
Résultat
1Contains strict example2bool(true)1Contains strict example2bool(true)
Code source #2 : Booléen et nombre, tu ne passes pas !
1$languages = collect([2 "php",3 "python",4 "javascript",5 "go",6 "c#",7 "java",8 "cobol",9 "basic"10]);1112$result = $languages->contains('C#');13var_dump($result);1$languages = collect([2 "php",3 "python",4 "javascript",5 "go",6 "c#",7 "java",8 "cobol",9 "basic"10]);1112$result = $languages->contains('C#');13var_dump($result);
Résultat
1Contains strict example2bool(false)1Contains strict example2bool(false)
Donc si tu as besoin d'effectuer des recherches en mode comparaison stricte dans tes collections, c'est containsStrict() que tu utiliseras plutôt que contains().
Référence
Vous pouvez avoir tous les détails de cette fonction dans la documentation de Laravel