PHP Opérateurs de comparaison


Exemple

Égalité

Pour le test d'égalité de base, l'opérateur égal == est utilisé. Pour des vérifications plus complètes, utilisez l'opérateur identique === .

L'opérateur identique fonctionne de la même manière que l'opérateur égal, nécessitant que ses opérandes aient la même valeur, mais exige également qu'ils aient le même type de données.

Par exemple, l'exemple ci-dessous affichera «a et b sont égaux», mais pas «a et b sont identiques».

$a = 4;
$b = '4';
if ($a == $b) {
    echo 'a and b are equal'; // this will be printed
}
if ($a === $b) {
    echo 'a and b are identical'; // this won't be printed
}

Lors de l'utilisation de l'opérateur égal, les chaînes numériques sont converties en entiers.

Comparaison d'objets

=== compare deux objets en vérifiant s'ils sont exactement la même instance . Cela signifie que new stdClass() === new stdClass() résout en false, même si elles sont créées de la même manière (et ont exactement les mêmes valeurs).

== compare deux objets en vérifiant de manière récursive s'ils sont égaux ( égaux en profondeur ). Cela signifie que pour $a == $b , si $a et $b sont:

  1. de même classe
  2. avoir les mêmes propriétés, y compris les propriétés dynamiques
  3. pour chaque propriété $property ensemble de $property , $a->property == $b->property est vraie (donc cochée de manière récursive).

Autres opérateurs couramment utilisés

Ils comprennent:

  1. Supérieur à ( > )
  2. Inférieur à ( < )
  3. Supérieur ou égal à ( >= )
  4. Inférieur ou égal à ( <= )
  5. Pas égal à ( != )
  6. Pas identique à ( !== )
  1. Supérieur: $a > $b , retourne true si $a « valeur s est supérieure à de $b , sinon retourne false.

Exemple :

var_dump(5 > 2); // prints bool(true)
var_dump(2 > 7); // prints bool(false)
  1. Moindre que: $a < $b , retourne true si $a valeur de plus petite est celle de $b , sinon retourne false.

Exemple :

var_dump(5 < 2); // prints bool(false)
var_dump(1 < 10); // prints bool(true)
  1. Supérieur ou égal à : $a >= $b , renvoie true si la $a est supérieure à $b ou égale à $b , sinon retourne false .

Exemple :

var_dump(2 >= 2); // prints bool(true)
var_dump(6 >= 1); // prints bool(true)
var_dump(1 >= 7); // prints bool(false)
  1. Plus petit que ou égal à : $a <= $b , renvoie true si la $a est inférieure à $b ou égale à $b , sinon retourne false .

Exemple :

var_dump(5 <= 5); // prints bool(true)
var_dump(5 <= 8); // prints bool(true)
var_dump(9 <= 1); // prints bool(false)

5/6. Non égal / identique à: Pour reprendre l'exemple précédent sur l'égalité, l'exemple ci-dessous affiche «a et b ne sont pas identiques», mais pas «a et b ne sont pas égaux».

$a = 4;
$b = '4';
if ($a != $b) {
    echo 'a and b are not equal'; // this won't be printed
}
if ($a !== $b) {
    echo 'a and b are not identical'; // this will be printed
}