$var = "cat";
switch($var)
{
case "cat":
echo 'My '.$var.' is called Bob.';
break;
case "dog":
echo 'My '.$var.' is called James.';
break;
default:
echo "I don't have an animal";
break;
}
In einer switch-Anweisung vergleicht man $var mit einem Wert in einem Fall. Wenn es eine Übereinstimmung gibt, wird der aktuelle Fall ausgeführt, andernfalls wird der Standardwert ausgeführt. Sie können <>!=... in einem case nicht verwenden, nur Werte wie: 1, '1', 'Hund', $var2, usw.
Wenn Sie denselben Befehl für zwei Fälle ausführen möchten, können Sie dies tun:
$var = "cat";
switch($var)
{
case "cat":
case "dog":
echo 'My '.$var.' is called James.';
break;
default:
echo "I don't have an animal";
break;
}
In Ihrem Code haben Sie vergessen, break; am Ende eines jeden Falles zu setzen, deshalb sehen Sie 'alles' in Ihrer Ausgabe. Und Sie vermissen auch default:.
Für die Aufgabe, die Sie bearbeiten, empfehle ich Ihnen, if-Anweisungen zu verwenden.