Algorithmen sind schrittweise Anweisungen zur Lösung eines Problems. Algorithmen können Kontrollstrukturen enthalten.
Kontrollstrukturen erlauben uns, Code nur unter bestimmten Bedingungen auszuführen. Daher werden diese Strukturen auch als Bausteine der Algorithmen bezeichnet.
| Operator | Bedeutung |
|---|---|
$a$ == $b$ |
a gleich b |
$a$ === $b$ |
a gleich b und gleiche Datentypen (strikt) |
$a$ != $b$ oder $a$ <> $b$ |
a ungleich b |
$a$ !== $b$ |
a ungleich b und gleiche Datentypen (strikt) |
$a$ < $b$ |
a kleiner als b |
$a$ <= $b$ |
a kleiner gleich b |
$a$ > $b$ |
a größer b |
$a$ >= $b$ |
a größer gleich b |
$a$ and $b$ |
a und b |
xand $b$ |
|
$a$ or $b$ |
a oder b |
$a$ xor $b$ |
entweder a oder b (exklusives oder) |
! $a$ |
nicht a |
<?php
$a = 2;
$b = 3;
# einseitig
if ($a == $b) {
echo "$a ist gleich $b";
}
# zweiseitig
if ($a == $b) {
echo "$a ist gleich $b";
} else {
echo "$a ist ungleich $b";
}
# mehrseitig
if($a < $b) {
echo "$a ist kleiner als $b";
} elseif ($a > $b) {
echo "$a ist größer als $b";
} else {
echo "$a ist gleich $b";
}
<?php
# Standardnotation if-else
if( array_key_exists('action', $_POST) ) {
$action = $_POST['action'];
} else {
$action = null;
}
# Kurzschreibweise if-else
$action = array_key_exists('action', $_POST) ? $_POST['action'] : null;
# mehrseitiger switch-Algorithmus
switch ($action) {
case 'create':
$myObject->new();
break;
case 'read':
$myObject->show();
break;
case 'update':
$myObject->update();
break;
case 'delete':
$myObject->delete();
break;
default:
$myObject->index();
}
Die Kontrollstruktur match ist ab PHP 8.0 verfügbar.
<?php
# Standardnotation if-else
if( array_key_exists('action', $_POST) ) {
$action = $_POST['action'];
} else {
$action = null;
}
# Kurzschreibweise if-else
$action = array_key_exists('action', $_POST) ? $_POST['action'] : null;
# mehrseitiger match-Algorithmus
$result = match($action) {
'create' => $myObject->new(),
'read' => $myObject->show(),
'update' => $myObject->update(),
'delete' => $myObject->delete(),
default => $myObject->index()
}