Noobis.de - Wir helfen weiter !
| Die Switch Anweisung |
|
|
|
| Tutorial Übersicht - Developer Tutorials | |||||||||||
| Samstag, 20. September 2008 um 09:59 | |||||||||||
Seite 1 von 3 Die PHP Switch Anweisung. Oftmals ist es vorteilhafter, eine Switch Anweisung zu formulieren, als mehrere geschachtelte IF-Blöcke.
Die switch-Abfrage ist eine Kontrollstruktur wie die If-Abfrage. Sie führt nur bestimmte Programmteile aus, wenn bestimmte Bedingungen erfüllt sind. Doch eine switch-Abfrage macht nur beim Vergleichen von Ausdrücken und Variablen Sinn. Wenn der Ausdruck oder die Variable den Wert xy hat, dann wird der Teil abc ausgeführt, wenn der Wert ghj ist, wird ein anderen Teil ausgeführt. Mit If-Abfragen würde das so aussehen. <?php Das hier fast immer die gleiche Anweisung ausgeführt wird ist reiner Zufall. Das Beispiel könnte auch so aussehen. <?php Dieses Beispiel kann man z.B. nutzen um die Member für seinen Clan hinzuzufügen, bearbeiten oder zu löschen. Die Funktionen daten_aus_Datenbank_loeschen() gibt es natürlich nicht. An dieser Stelle kommen dann die entsprechenden Funktionen um dann wirklich die Daten zu löschen. Eine Switch-Abfrage ist etwas anders aufgebaut als mehrere If-Abfragen, hat aber auch Vorteile gegenüber If-Abfragen. Eine Switch-Abfrage ist wie folgt aufgebaut.
<?php
Da wo in diesem Beispiel variable steht, kommt dann die Variable rein die man überprüfen möchte. In den geschweiften Klammern kommen dann die case wert: Zeilen. Der PHP-Interpreter durchläuft dann jedes case und springt dann dort hin wo der Inhalt der Variable gleich dem Wert hinter case ist und arbeitet dann dort stehende Codes ab.
<?php Hier wird die Variable $name auf ihren Wert überprüft. PHP guckt sich dabei jedes case an, ob der Wert, der hinter case steht (kann ein beliebiger Ausdruck sein, egal ob int, float oder string), mit dem Wert in der Variable. Sobald PHP eine Übereinstimmung gefunden hat, arbeitet PHP all die Befehle ab, die zwischen diesem case (hier case 5:) und der geschweiften Klammer zu } von der switch-Abfrage stehen. Wenn also der Wert der Variable bei dieser switch-Abfrage den Wert 6.2435 hat, dann werden nur die letzen beiden Code-Segmente ausgeführt. Wenn die Variable den Wert 0 hat, dann werden alle PHP-Segmente ausgeführt. Und wenn die Variable einen Wert hat der nicht hinter einem case steht, also z.B. 3.1415, dann wird gar kein PHP-Code ausgeführt, denn es wurde ja auch keine Übereinstimmung gefunden. Wenn er eine Übereinstimmung gefunden hat, beachtet er dann kommende cases nicht mehr.
|
|||||||||||
| Aktualisiert ( Samstag, 20. September 2008 um 15:38 ) |




Comments