"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Comparaison de chaînes PHP : `==`, `===` ou `strcmp()` – Quel opérateur devez-vous utiliser ?

Comparaison de chaînes PHP : `==`, `===` ou `strcmp()` – Quel opérateur devez-vous utiliser ?

Publié le 2024-12-17
Parcourir:166

PHP String Comparison: `==`, `===`, or `strcmp()` – Which Operator Should You Use?

Comparaison de chaînes en PHP : '==', '===' ou 'strcmp()' ?

Comparaison de chaînes en PHP peut être réalisé en utilisant différents opérateurs tels que '==', '===' ou la fonction 'strcmp()'. Cette comparaison consiste à vérifier si deux chaînes sont égales ou non.

'==' vs. '==='

L'opérateur '==' vérifie l'égalité uniquement et ne prend pas en compte le type des opérandes. Cela signifie que « 0 » est considéré comme égal à « faux » dans la comparaison « == ». D'un autre côté, l'opérateur '===' vérifie à la fois l'égalité et l'identité, ce qui signifie que les opérandes doivent avoir la même valeur et le même type. Ainsi, '0' n'est pas égal à 'false' dans la comparaison '==='.

'strcmp()' Fonction

Le 'strcmp()' La fonction compare deux chaînes lexicographiquement. Il renvoie une valeur négative si la première chaîne est inférieure à la deuxième chaîne, une valeur positive si la première chaîne est supérieure à la deuxième chaîne et 0 si elles sont égales.

Quand utiliser ' strcmp()'?

Bien que '===' soit généralement suffisant pour la comparaison de chaînes dans la plupart des cas, 'strcmp()' est utile lorsque vous avez besoin pour :

  • Déterminer l'ordre des chaînes (si str1 est inférieur, égal ou supérieur à str2)
  • Effectuer des comparaisons de chaînes insensibles à la casse (à l'aide de 'strcasecmp() ' function)

Dans l'extrait de code fourni :

if ($password === $password2) { ... }

Cette comparaison utilisant '===' ne retournera vrai que si les mots de passe ont à la fois la même casse et la même valeur. Si vous souhaitez autoriser la comparaison des mots de passe sans distinction de casse, vous devrez utiliser 'strcmp()' ou 'strcasecmp()'.

Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3