Thema: Switch - Alternative zu IF 
Autor Deine Nachricht
 : Switch - Alternative zu IF
BeitragVerfasst: Mi 14. Okt 2009, 16:19 
Offline
PC Erfahrener
PC Erfahrener
Benutzeravatar

Registriert: Mi 30. Sep 2009, 13:31
Beiträge: 107
Wohnort: Barsinghausen
Hallöchen,

ich möchte euch hier mal die "Switch"-Funktion näher bringen, in manchen Situationen sicherlich einfacher,schöner und sinnvoller als eine IF-ELSE oder ELSEIF anweisung. :)

Fangen wir an:

Der Aufbau einer "switch"-Anweisung:

Nachdem wir mit "switch" unsere Anweisung gestartet haben folgt die Variable die geprüft werden soll ($variable)
anschließend noch der Hauptteil der von geschweiften Klammern umgeben ist. ( { } )

Nun haben wir schonmal den Aufbau.

Weiter geht es mit dem Inhalt (Hauptteil):



Nun haben wir hier 2 "case" Abschnitte.
Diese lassen sich gut mit einer ELSEIF-Anweisung vergleichen,
aber moment, in einer switch-Anweisung können wir NUR einen Vergleichoperator verwenden, nämlich -> ==
In unserem Beispiel wäre das also so:
-> $variable == 3 -> case3:
-> $variable == "string" -> case "string":

wenn wir den Quellcode oben als ELSEIF schreiben würden, würde es folgendermaßen aussehen:

Also nicht sehr lohnenswert dort IF zu verwenden.

Weiter geht es mit den einzelnen case-Elementen:

In den case-Elementen kann man so ziemlich alles machen (lassen), hier hab ich es auf ein einfaches Echo beschränkt.
Nun haben wir aber ein ungewollten Nebeneffekt (oder auch nicht), in unserem Fall möchten wir das nur ein case einen Text ausgibt.
Dies können wir mit einem break; erreichen:

Der break sogt nun dafür das nach dem Aufruf der switch beendet wird und die nachfolgenden case nicht angezeigt oder ausgefürt werden.


Soooo, nun haben wir es ja fast geschafft :)
Kommen wir zum vorerst letzten Teil in diesem Tutorial:
Dem default:

Der default-Teil kommt immer dann zum einsatz wenn kein passendes case vorhanden ist,
in unserem Beispiel wäre das z.b. die Nummer 4, es ist kein case 4: vorhanden, also wird der default-Teil angezeigt.



So nun sind wir echt am Ende :D
Sollte noch etwas unklar sein oder sollte in euren Augen etwas fehlen, schreibt es einfac hier in den Thread :)

Mit freundlichen Grüßen,
Fazitas :)

_________________
Zitate  : 
Älter werden ist unvermeidbar - Erwachsen werden dagegen optional. Autor Unbekannt
Das Chaos besiegt die Ordnung, weil es besser organisiert ist. Terry Pratchett
Projekt  : 
Bild
INVALID  : 
Bild


 
 Profil E-Mail senden