HomeArtikelDownloadsForum
PCFreunde.deArtikelTutorialsProgrammierenErstellen von dynamischen Internetseiten mit PHP
Besucher online: 38
Hinweis
Diese Seite steht zum Verkauf.
Mehr Infos

Schnellsuche

Kategorien
Mittwoch, 10. Dezember 2008 Seite 5/7
Switch-Case-Anweisung
Die switch-case-Verzweigung hat prinzipiell dieselbe Funktion wie die vorher besprochene if-then-else-Verzweigung und zwar das Prüfen auf den Wahrheitswert einer Aussage und das Ausführen bestimmter Anweisungen infolge des Ergebnisses der Prüfung. Im nachfolgenden Beispiel wird die Variable selection auf ihren Inhalt geprüft und je nachdem, welchen Wert sie hat, das Ergebnis ausgegeben:
<?php
$selection = 'b';
switch ($selection) { //Auf welche Variable wird geprüft
	case 'a':
		echo "Die Auswahl ist a";		  
		break;  //break beendet die Switch-Anweisung
	case 'b':
		echo "Die Auswahl ist b";
		break;		  
	default:  
	/*
	 * default-Zweig wird ausgeführt wenn 
	 * keines der case-Statements ausgeführt wird
	 */
		echo "Weder a noch  b gewählt";
		break;
}
?>
Wie hier ersichtlich gibt man im Kopf der Anweisung, innerhalb der switch-Funktion, die zu prüfende Variable an (hier: selection). Danach folgt ein case gefolgt vom Wert auf den die Variable geprüft werden soll und einem Doppelpunkt. Alles was nun zwischen dem Doppelpunkt und dem nächsten case folgt wird ausgeführt, sofern die Variable dem geprüften Wert entspricht (hier 'a'). Da dies nicht der Fall ist, geht die Abarbeitung weiter und führt das zweite case-Statement aus, da selection den Wert b besitzt. Die Funktion break hat den Sinn, dass nach der Ausführung des richtigen Codes (hier: die Ausgabe des Strings) die komplette switch-Anweisung verlassen wird, andernfalls werden die Anweisungen normal weiter abgearbeitet und der default-Zweig, der immer dann ausgeführt werden sollte, wenn keine der Bedingungen zutrifft, trotzdem abgearbeitet wird. Das Vergessen der Funktion break ist ein typischer Anfängerfehler, der dazu führt, dass nicht das gewünschte Ergebnis erzielt wird. Es gibt jedoch auch Beispiele, wo der Programmierer ausdrücklich das Abarbeiten des default-Zweigs erwünscht, in diesem Falle kann das break natürlich entfallen.
Die For-Schleife
Die For-Schleife hat die Aufgabe eine oder mehrere Anweisungen so oft wie angegeben zu wiederholen. Der Kopf der For-Schleife besteht aus drei Teilen, die durch ein Semikolon getrennt sind. Im ersten Teil wird eine Variable angegeben, über die in der Regel inkrementiert (hochgezählt) oder dekrementiert (heruntergezählt) wird. Danach folgt die Abbruchbedingung, also unter welcher Bedingung das Ausführen der Schleife beendet wird. Der letzte Teil gibt an, welche Aktion mit jedem Durchlauf ausgeführt werden soll. Dies ist nötig, damit die Schleife irgendwann ein Ende findet, also die Bedingung (der 2. Teil des Kopfes) irgendwann „false“ ergibt:
<?php
for ($i = 0; $i < 10; $i++) { //Durchlauf von i 10mal (von 0-9)
	echo "Der Wert von i ist gerade " . $i; 
	//Ausgabe des aktuellen Wertes von i auf der Seite
	echo "<br/>"; //ein Zeilenumbruch (in HTML)	  
}
?>
Der Beispielcode zeigt deutlich die Vorgehensweise. Die Variable $i wird im ersten Teil des Kopfes mit 0 initialisiert und im dritten Teil sieht man, dass $i bei jedem Durchlauf um 1 erhöht wird (das $i++ bedeutet soviel wie $i=$i+1). Beim ersten Durchlauf der Schleife hat $i den Wert 0, was dazu führt, dass die Bedingung wahr ist (0<10) und der Code im Inneren der for-Schleife durchlaufen und ausgeführt wird. Nach Abarbeitung wird $i um 1 erhöht, erneut die Bedingung überprüft und fortgefahren. Dieses Spiel wiederholt sich, bis $i den Wert 10 erreicht. Nun ist die die Bedingung beim Prüfen false (10 ist nicht kleiner 10) und damit ist die Abarbeitung der kompletten For-Schleife beendet. Der innere Block wird also nicht noch einmal durchlaufen. Die einzelnen Teile des Schleifenkopfes sind natürlich beliebig veränderbar, so ist es z.B. vorstellbar die Variable mit 10 zu initialisieren, die Bedingung abzuändern oder $i um 4 hochzuzählen anstatt um 1. Wichtig ist nur, dass die Schleife irgendwann zu einem Ende kommt, also die Bedingung irgendwann falsch ergeben muss. Ansonsten kommt es nämlich zu einer Endlosschleife und somit zum unweigerlichem Absturz der Webseite.
ZurückWeiter
© Copyright PCFreunde.de
Autor des Artikels
48.697 Punkte
Dieser Artikel wurde bisher
7.616 mal gelesen.
Schreiben des Artikels
(+250 Punkte)
Bitte melde dich an und bewerte diesen Artikel!
25 von 29 Mitgliedern
finden diesen Artikel gut
(+625 Punkte)
Inhaltsverzeichnis
Kommentare
Schreib uns deine Meinung zu diesem Artikel - einfach registrieren und los!
Kommentar schreiben
 
htmlfreak
10.12.2008 14:42
schön beschrieben, ich bin auch grad dabei, mir Eclipse runterzuladen. Ich werd mich demnächst mal näher mit PHP beschäftigen :lol:

Gruß,
htmlfreak.
 
L3oop
10.12.2008 15:38
Jo,

t+ller Artikel, b1n4ry0utl4w!

Vor allem für Einsteiger sehr hilfreich :wink:
 
anko
16.12.2008 09:52
Vielen Dank für den sehr guten Beitrag :-)
 
Alle BeiträgeKommentar schreiben
Community Login
eMail:
Passwort:
Auto-Login