PHP Grundlagen

Bedingungen

Bei den Bedingungen werden die Wahrheitswerte von Variablen verglichen. Wenn der Ausdruck true (wahr) ist, wird Code ausgeführt. Falls der Ausdruck jedoch false (falsch) ist, dann nicht. Hier sehen wir was passiert wenn $a true ist:

<?php		  
  $a = true;

  if($a) {
    echo "a ist wahr"; // Ausgabe: a ist wahr
  } else {
    echo "a ist falsch"; // keine Ausgabe
  }
?>

Sehen wir uns das Beispiel an, wenn a gleich false ist:

<?php	
  $a = false;
    
  if($a) {
    echo "a ist wahr";  // keine Ausgabe
  } else {
    echo "a ist falsch"; // Ausgabe: a ist falsch
  }
?>

Jetzt wird die "else" Bedingung ausgeführt. Auf Deutsch kann der Code so erklärt werden: Falls die Variable $a wahr ist, führe den folgenden Code aus, andernfalls (else) führe den anderen Code aus. Wenn wir Zahlen vergleichen möchten, können wir dies ebenfalls mit Bedingungen erreichen. In diesem Beispiel wird ersichtlich, dass es auch else if gibt. So kann man mehr Zustände testen als nur allein mit if und else.

<?php			  
  $a = 7;
  $b = 5;

  if($a < $b) {
    echo "a ist kleiner als b"; // wird nicht ausgeführt
  } else if($a > $b) {
    echo "a ist grösser als b"; // Ausgabe: a ist grösser als b
  } else {
    echo "a ist gleich b"; // wird nicht ausgeführt
  }
?>

Gesprochen wird dieser Code: Falls $a kleiner ist als $b, führe folgenden Code aus. Falls $a grösser als $b ist, führe einen anderen Code aus. Falls beides nicht zutrifft, müssen die Zahlen gleich gross sein und die else Bedingung wird ausgeführt. Es kann auch explizit getestet werden, ob zwei Variablen gleich oder ungleich sind:

<?php			  
  $a = 5;
  $b = 5;

  if($a == $b) {
    echo "a ist gleich b"; // Ausgabe: a ist gleich b
  } else {
    echo "a ist nicht gleich b"; // wird nicht ausgeführt
  }

/*
Hier eine Auflistung der möglichen Vergleichsoperatoren:
==    (ist gleich)
===   (ist gleich und Typ-gleich)
!=    (ist nicht gleich)
!==   (ist nicht gleich oder Typ nicht gleich)
>     (grösser als)
<     (gleiner als)
>=    (grösser als oder gleich)
<=    (kleiner als oder gleich)
*/
?>

Wenn mehrere Bedingungen gleichzeitig geprüft werden sollen, kann der Und-Operator && oder der Oder-Operator || verwendet werden. Hierzu ein Beispiel:

<?php		  
  $a = 7;
  $b = 5;

  if($a > $b && ($a % 2 == 1)) {
    echo "a ist grösser als b und a ist ungerade"; // wird ausgeführt
  } else {
    echo "a ist nicht grösser als b und nicht ungerade"; // wird nicht ausgeführt
  }
?>

Hier die Ergebnisse von && und || Operatoren:

<?php		  
  // Logischer UND Operator
true && true;  // true
true && false; // false
false && true;  // false
false && false; // false

// Logischer ODER Operator
true || true;  // true
true || false; // true
false || true;  // true
false || false; // false
?>

Aufgabe 1:

Sind diese Vergleichswerte true (wahr) oder false (falsch)?

<?php

$a = 3;
$b = 8;
$c = 8.0;

 $a < $b // true oder false?

 $b == $c // true oder false?

 $b === $c // true oder false?

 $a != $b // true oder false?

 $b >= $c // true oder false?

 ($a < $b) && ($b === $c) // true oder false?

 ($a > $b) || ($b == $c) // true oder false?

?>


true
true
false
true
true
false
true