En PHP, trois signes égaux (===) sont appelés opérateurs d'égalité stricts, qui sont utilisés pour comparer si les valeurs et les types des deux expressions sont exactement les mêmes. Il peut empêcher la conversion de type inattendue et assurer la précision des résultats de comparaison.
L'opérateur d'égalité strict compare non seulement les valeurs de deux variables, mais vérifie également si elles sont du même type. Par exemple, même si la valeur du nombre 0 et de la chaîne "0" sont les mêmes et que les types sont différents, l'utilisation de la comparaison === renvoie false.
var_dump (0 === "0"); // FAUX var_dump (0,0 === "0"); // FAUX var_dump ("1" === 1); // FAUX
Le signe d'égalité normal (==) est un opérateur de comparaison lâche, et la conversion de type est automatiquement effectuée pendant la comparaison, ce qui peut entraîner des cas où différents types mais des valeurs égales renvoient vrai.
var_dump (0 == "0"); // vrai var_dump (0,0 == "0"); // vrai var_dump ("1" == 1); // vrai
Lorsque vous devez vous assurer que deux variables sont non seulement de la même valeur mais aussi du même type, vous devez utiliser l'opérateur d'égalité strict. Ceci est particulièrement important pour éviter les erreurs logiques causées par des conversions de type implicite, en particulier lorsqu'ils traitent des structures de données complexes telles que des objets ou des tableaux.