Ungleichheit nach Wert und Typ in PHP

Neben dem Operator != gibt es auch den Operator !==, der den Typ beim Vergleich berücksichtigt. Lassen Sie uns die Unterschiede zwischen ihnen anhand von Beispielen betrachten.

Angenommen, zwei Zahlen 3 werden mit dem Operator != verglichen. Dieser Operator vergleicht die Werte darauf, dass sie NICHT gleich sind. Da unsere Werte eben gleich sind, wird '-' auf dem Bildschirm ausgegeben:

php<?php
  if (3 != 3) {
    echo '+++';
  } else {
    echo '---'; // das wird ausgeführt, da die Werte gleich sind
  }
?>

Angenommen, einer unserer Werte steht jetzt in Anführungszeichen. In diesem Fall wird der Operator != sie trotzdem als gleich betrachten (da der Wert übereinstimmt, und der Typ für diesen Operator unwichtig ist) und wieder '-' ausgeben:

php<?php
  if ('3' != 3) {
    echo '+++';
  } else {
    echo '---'; // das wird ausgeführt, da die Werte gleich sind
  }
?>

Lassen Sie uns jetzt zwei Zahlen 3 mit dem Operator !== vergleichen. Er wird sie ebenfalls als gleich betrachten und '-' ausgeben:

php<?php
  if (3 !== 3) {
    echo '+++';
  } else {
    echo '---'; // das wird ausgeführt, da die Werte gleich sind
  }
?>

Wenn wir aber jetzt eine der Dreien in Anführungszeichen setzen, dann wird der Operator !== unsere Dreien als ungleich betrachten, da, obwohl ihre Werte übereinstimmen, sie aber einen unterschiedlichen Typ haben:

php<?php
  if ('3' !== 3) {
    echo '+++'; // das wird ausgeführt, da die Werte NICHT gleich sind
  } else {
    echo '---';
  }
?>
Задание 1

Bestimmen Sie, ohne den Code auszuführen, was auf dem Bildschirm ausgegeben wird:

php<?php
  $test1 = '3';
  $test2 = '3';
    
  if ($test1 != $test2) {
    echo '+++';
  } else {
    echo '---';
  }
?>
Задание 2

Bestimmen Sie, ohne den Code auszuführen, was auf dem Bildschirm ausgegeben wird:

php<?php
  $test1 = '3';
  $test2 = '3';
    
  if ($test1 !== $test2) {
    echo '+++';
  } else {
    echo '---';
  }
?>
Задание 3

Bestimmen Sie, ohne den Code auszuführen, was auf dem Bildschirm ausgegeben wird:

php<?php
  $test1 = 3;
  $test2 = '3';
    
  if ($test1 != $test2) {
    echo '+++';
  } else {
    echo '---';
  }
?>
Задание 4

Bestimmen Sie, ohne den Code auszuführen, was auf dem Bildschirm ausgegeben wird:

php<?php
  $test1 = 3;
  $test2 = '3';
    
  if ($test1 !== $test2) {
    echo '+++';
  } else {
    echo '---';
  }
?>
Задание 5

Bestimmen Sie, ohne den Code auszuführen, was auf dem Bildschirm ausgegeben wird:

php<?php
  $test1 = 3;
  $test2 = 2;
    
  if ($test1 !== $test2) {
    echo '+++';
  } else {
    echo '---';
  }
?>