Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 30 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
30
Dung lượng
520,41 KB
Nội dung
2 – Die Sprache PHP: Prozedural
30
Bei ihrer Verwendung müssen die Indizes nicht in einzelnen oder doppelten Anfüh-
rungszeichen gesetzt werden. Das erhöht die Lesbarkeit des Quellcodes.
Dynamische Inhalte
Wie bereits erwähnt, müssen auch die Datentypen in einem Array nicht einheitlich sein.
Das wird in Listing 2.15 verdeutlicht. Somit sind Arrays in PHP sehr dynamische Daten-
felder, die mit Collections in Java vergleichbar sind:
Die Ausgabe dieses Arrays lautet array(3) { [2]=> int(0) [-5]=> float(0) [8]=> string(5)
"Hallo" }.
Löschen von Feldern
PHP bietet Ihnen die Möglichkeit, ganze Arrays zu löschen oder zu leeren. Zusätzlich
können Sie einzelne Elemente aus einem Array entfernen. Listing 2.16 zeigt, wie Sie
zunächst das Element mit dem Index 8 aus Listing 2.15 löschen, dann das Datenfeld $data
leeren und abschließend die Referenz $data selbst entfernen. Wenn Sie ein ganzes Array
nicht mehr benötigen, so können Sie direkt die Referenz entfernen. PHP organisiert
dabei das gesamte Speichermanagement:
<html><body>
<?php
$personen=array(
'ich' => 'Frank',
'Vater' => 'Kurt',
'Bekannter' => 'Hans');
echo($personen[ich].'<br>'.$personen[Vater].'<br>');
echo($personen[Bekannter].'<br>');
?>
</body></html>
Listing 2.14: Ein Index aus Zeichenketten
<html><body>
<?php
$data=Array(); $data[2]=0; $data[-5]=0.0; $data[8]="Hallo";
echo(var_dump($data));
?>
</body></html>
Listing 2.15: Ein Array mit dynamischen Datentypen und Indizes
<html><body>
<?php
$data=Array(); $data[2]=0; $data[-5]=0.0; $data[8]="Hallo";
Listing 2.16: Löschen eines Elements sowie Löschen des gesamten Datenfelds
Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark.
Grundlegende Syntax
PHP –Endlich objektorientiert 31
Die Ausgabe dieses Skripts lautet:
array(2) { [2]=> int(0) [-5]=> float(0) }
array(0) { }
NULL
Mehrdimensionale Datenfelder
Genauso dynamisch, wie Sie Elemente in einem Feld verwalten können, können Sie auch
Felder in einem Feld verwalten. Das führt zu mehrdimensionalen Arrays. Eine Möglich-
keit, ein mehrdimensionales Array anzulegen, zeigt Listing 2.17. Dort ist auch der
Zugriff auf das mehrdimensionale Datenfeld dargestellt. Die Ausgabe ist identisch mit
der Reihenfolge, in dem die einzelnen Elemente angelegt worden sind:
Ebenso können Sie auch bei einem mehrdimensionalen Datenfeld die Indizes frei wäh-
len. Das Beispiel in Listing 2.18 zeigt eine freie Definition der Indizes:
unset($data[8]); // löschen eines Elementes
echo(var_dump($data).'<br>');
$data=Array(); // leeren des Arrays
echo(var_dump($data).'<br>');
unset($data); // löschen des Arrays
echo(var_dump($data).'<br>');
?>
</body></html>
<html><body>
<?php
$kunden=array(
array('Frank','Dopatka'),
array('Uli','Müller'),
array('Max','Mustermann')
);
echo($kunden[0][0].' '.$kunden[0][1].'<br>');
echo($kunden[1][0].' '.$kunden[1][1].'<br>');
echo($kunden[2][0].' '.$kunden[2][1].'<br>');
?>
</body></html>
Listing 2.17: Erstes mehrdimensionales Datenfeld
Listing 2.16: Löschen eines Elements sowie Löschen des gesamten Datenfelds (Forts.)
Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark.
2 – Die Sprache PHP: Prozedural
32
Wie auch bei einem eindimensionalen Array muss ein mehrdimensionales Array nicht
bei seiner Initialisierung mit Werten gefüllt werden. Die zweite Dimensionierung kann
ebenso dynamisch durchgeführt werden, wie Listing 2.19 zeigt:
PHP-Funktionen zur Bearbeitung von Datenfeldern
Die Sprache PHP verfügt über mächtige Funktionen zur Bearbeitung von Datenfeldern.
Die Wichtigsten dieser Funktionen sind im Folgenden kurz zusammengefasst. Wenn Sie
eine vollständige Übersicht erhalten möchten, können Sie in Suchmaschinen wie Google
mit Begriffen wie „PHP“, „Array“ und „Funktionen“ weitere, seltener verwendete
Funktionen abrufen. Beispielsweise hat sich die Internetseite http://www.phpcenter.de/de-
html-manual/ref.array.html als sehr übersichtlich herausgestellt.
Für Sie als Programmierer ist es sinnvoll zu wissen, welche Funktionen PHP bereits
bereit stellt, damit Sie bei Bedarf darauf zugreifen können. Es ist nicht ratsam, dass Sie
<html><body>
<?php
$kunden=array(
'K1'=>array('VN'=>'Frank','N'=>'Dopatka'),
'K2'=>array('VN'=>'Uli','N'=>'Müller'),
'K3'=>array('VN'=>'Max','N'=>'Mustermann')
);
echo($kunden[K1][VN].' '.$kunden[K1][N].'<br>');
echo($kunden[K2][VN].' '.$kunden[K2][N].'<br>');
echo($kunden[K3][VN].' '.$kunden[K3][N].'<br>');
?>
</body></html>
Listing 2.18: Ein mehrdimensionales Datenfeld mit eigenen Indizes
<html><body>
<?php
$kunden=Array();
$kunden[0]=Array();
$kunden[0][0]='Frank';
$kunden[0][1]='Dopatka';
$kunden[1]=Array();
$kunden[22][0]='Uli';
$kunden[22][1]='Müller';
echo($kunden[0][0].' '.$kunden[0][1].'<br>');
echo($kunden[22][0].' '.$kunden[22][1].'<br>');
?>
</body></html>
Listing 2.19: Ein dynamisch initialisiertes mehrdimensionales Datenfeld
Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark.
Grundlegende Syntax
PHP –Endlich objektorientiert 33
existierende Funktionen nachprogrammieren, da Sie mit Sicherheit weder die Perfor-
mance, noch die Fehlerfreiheit von PHP erreichen.
Die erste Gruppe von Funktionen umfasst das Sortieren von Feldern. Neben einer zufäl-
ligen Anordnung können Sie eine auf- bzw. absteigende Sortierung wählen.
Listing 2.20 zeigt einen Anwendungsfall einer Sortierung. Die Ausgabe lautet „Frank“,
„Max“ und dann „Uli“. Auf diese Weise können Sie mit eigenen, einfachen Beispielen
jede Funktion austesten:
Zusätzlich können Sie auch eine Sortierung nach einer eigenen Funktion durchführen.
Wie Sie eine Funktion deklarieren und damit ein Datenfeld sortieren, wird in Kapitel
2.1.5 vorgestellt.
Ähnlich wie beim Auslesen einer Ergebnismenge aus einer Datenbank (Kapitel 2.2:
„Zugriff auf eine MySQL-Datenbank“) kann man auch einen Zeiger über ein Datenfeld
laufen lassen. Das wird oft bei der Suche nach einzelnen Elementen oder für eine Weiter-
Funktion Bedeutung
shuffle($arr) ordnet alle Elemente des Datenfeldes zufällig neu an
sort($arr) sortiert ein eindimensionales Datenfeld vorwärts; war es ein assoziatives Feld, so wird es
in ein nummerisches Feld umgewandelt
rsort($arr) sortiert ein eindimensionales Datenfeld rückwärts; war es ein assoziatives Feld, so wird es
in ein nummerisches Feld umgewandelt
asort($arr) sortiert ein eindimensionales Datenfeld vorwärts und behält die Beziehungen in einem
assoziativen Feld bei
arsort($arr) sortiert ein eindimensionales Datenfeld rückwärts und behält die Beziehungen in einem
assoziativen Feld bei
Tabelle 2.8: Sortierung eines Felds
<html><body>
<?php
$kunden=array('Frank','Uli','Max');
sort($kunden);
echo(var_dump($kunden));
?>
</body></html>
Listing 2.20: Sortieren eines Datenfelds
Funktion Bedeutung
usort($arr, func) sortiert ein eindimensionales Datenfeld nach einer eigenen Funktion
uasort($arr, func) sortiert ein assoziatives Datenfeld nach einer eigenen Funktion
Tabelle 2.9: Funktionen zur Feldsortierung mit eigener Funktion
Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark.
2 – Die Sprache PHP: Prozedural
34
verarbeitung verwendet. Zusätzlich können Sie ein Datenfeld nach der Anzahl der ent-
haltenen Elemente fragen.
Interessant ist auch die Funktion array_walk, die eine eigene Funktion
2
auf jedes Element
im Feld anwendet. Damit können Sie eine Schleifenstruktur
3
einsparen und erzeugen
übersichtlichen Quellcode.
In Listing 2.21 wird der Zeiger auf ein Datenfeld $kunden zunächst auf das erste Element
mit der reset-Funktion gesetzt. Dieses Element wird dann über die key- und current-Funk-
tion ausgegeben. Im Anschluss daran wird der Zeiger über die next-Funktion weiter mit
erneuter Ausgabe bewegt:
Funktion Bedeutung
count($arr) oder
size_of($arr)
gibt die Anzahl der Elemente im Datenfeld zurück
reset($arr) setzt den internen Zeiger im Datenfeld auf das erste Element
end($arr) setzt den internen Zeiger im Datenfeld auf das letzte Element
current($arr) oder
pos($arr)
gibt den Inhalt des Elements zurück, auf dem der Zeiger steht
key($arr) gibt den Index des Elements zurück, auf dem der Zeiger steht
next($arr) setzt den internen Zeiger im Datenfeld um 1 nach vorne
prev($arr) setzt den internen Zeiger im Datenfeld um 1 zurück
array_walk($arr, func) wendet eine selbst definierte Funktion auf jedes Element des Datenfelds an
Tabelle 2.10: Zugriffsfunktionen auf ein Datenfeld
2
Kapitel 2.1.5
3
Kapitel 2.1.4
<html><body>
<?php
$kunden=array('Frank','Uli','Max');
reset($kunden);
echo('Position:'.key($kunden).'<br>');
echo('Wert:'.current($kunden).'<br>');
next($kunden);
echo('Position:'.key($kunden).'<br>');
echo('Wert:'.current($kunden).'<br>');
?>
</body></html>
Listing 2.21: Durchlaufen eines Datenfelds
Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark.
Grundlegende Syntax
PHP –Endlich objektorientiert 35
Abschließend werden weitere Funktionen zur Behandlung von Datenfeldern vorgestellt,
die sich im Alltag als sinnvoll erweisen. Diese betreffen unter anderem die Verwaltung
mehrerer Felder.
Ebenso ist die Funktion in_array hervorzuheben, die eine automatische Suche nach
einem Element durchführt. Aus eigener Erfahrung wird diese Funktion selten verwen-
det und stattdessen eine kompliziertere und inperformante Schleifenkonstruktion.
2.1.3 Verzweigungen
In diesem Kapitel wird ein wichtiges Konzept jeder prozeduralen Programmiersprache
vorgestellt. Mithilfe einer Verzweigung sind Sie in der Lage, eine alternative Ausführung
Ihrer Anwendung zu programmieren. Sie können damit auf eine eintretende Bedingung
entsprechend reagieren.
Ein Beispiel ist das Anmelden an ein Internetportal. Wenn Sie eine richtige Kombination
von Benutzername und Kennwort eingeben, so sollen Sie in das Portal gelangen.
Ansonsten soll eine Fehlermeldung angezeigt werden. Die richtigen Angaben soll PHP
später aus einer Datenbank entnehmen. Dabei muss eine Verbindung zur Datenbank
aufgebaut werden. Nun kann es vorkommen, dass der Datenbankserver nicht online ist.
In diesem Fall kann man nicht prüfen, ob die richtigen Daten eingegeben wurden. Wenn
die Verbindung also hergestellt wurde, kann erst die Prüfung erfolgen. Ansonsten muss
der Anwender eine Fehlermeldung erhalten, dass technische Probleme bei der Prüfung
aufgetreten sind, wofür sich der Anbieter entschuldigt.
Immer wenn Sie im Sprachgebrauch eine „Wenn-Dann“- oder „Wenn-Dann-Ansons-
ten“- Formulierung verwenden, werden Sie in Ihrer Anwendung eine Verzweigung ein-
setzen. Eine Verzweigung ist auch immer an eine Bedingung geknüpft, die entweder
erfüllt oder nicht erfüllt sein kann. Bei der Bedingung handelt es sich demnach um einen
Funktion Bedeutung
array_diff($arr1, $arr2, ) ermittelt Unterschiede in Datenfeldern und gibt diese als neues Datenfeld
zurück
array_merge($arr1, $arr2) verbindet zwei Datenfelder zu einem neuen Feld
array_pad($arr, $len, $wert) verkürzt (bei
$len<0
) oder verlängert ein nummerisches Feld um
$len
Ele-
mente und ersetzt leere Elemente
in_array($wert, $arr) gibt
TRUE
zurück, wenn ein Wert in einem Datenfeld vorhanden ist
array_shift($arr) liefert den Wert des ersten Elements eines Datenfelds und löscht das Ele-
ment dann im Feld
array_pop($arr) gibt den Wert des ersten Elements eines Datenfelds und löscht das Element
dann im Feld
array_sum($arr) summiert die Werte aller Ganz- und Fließkommazahlen aus einem Feld
array_unique($arr) entfernt mehrfache Einträge aus einem Datenfeld
Tabelle 2.11: Weitere nützliche Datenfeldfunktionen
Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark.
2 – Die Sprache PHP: Prozedural
36
Wahrheitswert, der TRUE oder FALSE sein kann. Eine Bedingung kann dabei aus Teilbe-
dingungen bestehen, die über logische Operatoren verknüpft werden (Tabelle 2.5).
Die If-then-else-Verzweigung
PHP bietet wie nahezu alle anderen Programmiersprachen auch die if-then-Verzweigung
mit der in Listing 2.22 skizzierten Syntax:
Zunächst werden die Texte Anweisung1 und Anweisung2 ausgegeben. Im weiteren Ver-
lauf werden statt der einfachen Textausgaben PHP-Befehle und/oder eigene Funktionen
ausgeführt. In diesem Schritt wird sich jedoch auf die Verzweigung konzentriert. Der
Text Anweisung3(Bedingung erfüllt)<br> wird nur dann ausgegeben, wenn die Variable
$bedingung den Wert TRUE hat. Wie es bei PHP typisch ist, wird die Ausgabe zum Inter-
netbrowser des Clients weitergegeben, der dann den Zeilenumbruch interpretiert. Im
Anschluss daran werden die Ausgaben Anweisung4, Anweisung5 und Anweisung6 getä-
tigt. War der Wert der Bedingung FALSE, so wird also die Ausgabe Anweisung3 unter-
bunden.
Innerhalb der if-Konstruktion – also innerhalb der geschweiften Klammern – können
beliebig viele Befehle platziert werden, die wie gewohnt durch ein Semikolon voneinan-
der getrennt werden. Außerdem können weitere Verzweigungen platziert werden. So
können Sie erreichen, dass beispielsweise zunächst geprüft wird, ob eine Verbindung zur
Datenbank erfolgreich aufgebaut wurde. Ist das der Fall, wird das richtige Kennwort aus
der Datenbank geholt und mit dem eingegebenen Kennwort verglichen. Dieser Vergleich
liefert wiederum einen Wahrheitswert. Wenn dieser TRUE ist, hat der Anwender Zugang
zum Portal.
Für den Fall, dass eine Bedingung FA LSE ergibt, können Sie ebenso Anweisungen plat-
zieren, die ausschließlich in diesem Fall ausgeführt werden. Eine Skizze dazu sehen Sie
in Listing 2.23:
<?php
echo('Anweisung1<br>'); echo('Anweisung2<br>');
if ($bedingung==TRUE){
echo('Anweisung 3(Bedingung erfüllt)<br>');
}
echo('Anweisung4<br>'); echo('Anweisung5<br>'); echo('Anweisung6<br>');
?>
Listing 2.22: Skizze einer Wenn-Dann-Verzweigung
<?php
echo('Anweisung1<br>'); echo('Anweisung2<br>');
if ($bedingung==TRUE){
echo('Anweisung 3(Bedingung erfüllt)<br>');
}
Listing 2.23: Skizze einer Wenn-Dann-Ansonsten-Verzweigung
Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark.
Grundlegende Syntax
PHP –Endlich objektorientiert 37
Hier wird entweder Anweisung3 ausgegeben, in dem Fall, dass $bedingung erfüllt ist,
oder Anweisung4, falls die $bedingung nicht erfüllt ist. Ansonsten wird der Quellcode wie
gewohnt linear abgearbeitet.
Abbildung 2.6 stellt die beiden bislang vorgestellten Arten der Verzweigung anhand von
Programmablaufplänen gegenüber und bezieht sich dabei auf die Quellcodes der beiden
Listings. Um den Verlauf eines Programms darzustellen, eignen sich Programmablauf-
pläne (PAP) besonders gut. Sie sind nach DIN 66001 genormt. Die Aktivitätsdiagramme
der UML (Kapitel 3) können als Weiterentwicklung der Programmablaufpläne gesehen
werden.
Abbildung 2.6: Die „Wenn-Dann“- (a) und die „Wenn-Dann-Ansonsten“-Verzweigung (b)
Im Folgenden werden einige Szenarien beschrieben, bei denen Verzweigungen im Kon-
text der HTML-Ausgabe häufig eingesetzt werden. Falls Sie bislang noch nicht mit PHP
programmiert haben, sollten Sie diese kleinen Beispiele nachprogrammieren, selbst ver-
ändern und verstehen.
else{
echo('Anweisung 4(Bedingung NICHT erfüllt)<br>');
}
echo('Anweisung5<br>'); echo('Anweisung6<br>');
?>
Listing 2.23: Skizze einer Wenn-Dann-Ansonsten-Verzweigung (Forts.)
Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark.
2 – Die Sprache PHP: Prozedural
38
Listing 2.24 zeigt bereits eine verschachtelte Verzweigung, bei der eine Variable $wert auf
eine Grenze, im Beispiel 10, geprüft wird. Es gibt hier drei Möglichkeiten: Die Grenze
kann unterschritten oder überschritten sein. Ist beides nicht der Fall, so entspricht der
Wert genau dem Grenzwert. In diesem Beispiel wird die Ausgabe über den echo-Befehl
von PHP in den HTML-Ausgabestrom geschrieben:
PHP bietet Ihnen aber auch die Option, den PHP-Quellcode beim Eintreffen einer Bedin-
gung zu unterbrechen und direkt mit der HTML-Ausgabe fortzufahren. Damit können
Sie ununterbrochenen HTML-Code schreiben. Listing 2.25 zeigt das gleiche Beispiel mit
direkter HTML-Ausgabe, indem mit ?>HTML<?php der PHP-Code unterbrochen wird.
Dabei werden auch einige HTML-Befehle in die Ausgabe integriert. Welche Art der Aus-
gabe Sie wählen, liegt an Ihrem eigenen Ermessen und am eigenen Programmierstil:
<?php $wert=10; ?>
<html><body>
Der Wert ist
<?php
if($wert<10){
echo(' kleiner als ');
}
else{
if($wert>10){
echo(' größer als ');
}
else{
echo(' gleich ');
}
}
?>
10.
</body></html>
Listing 2.24: Prüfung eines Werts
<?php $wert=10; ?>
<html><body>
<?php
if($wert<10){
?><h2>Der Wert ist <b>kleiner als</b> 10.</h2><?php
}
else{
if($wert>10){
?><h2>Der Wert ist <b>größer als</b> 10.</h2><?php
Listing 2.25: Prüfung eines Werts mit unterbrochenem PHP-Code
Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark.
Grundlegende Syntax
PHP –Endlich objektorientiert 39
Im Beispiel des Listings 2.26 wird anhand einer Verzweigung eine Farbe im HTML-Code
gesetzt. Damit kann ein positiver Wert grün und ein negativer Wert rot dargestellt wer-
den. Ist der Wert 0, so wird er schwarz hinterlegt. Um die Farbe zu setzen, definiert PHP
einen CSS-Stil (Cascading Stylesheets), der dem Wert dann zugewiesen wird. Ein solcher
CSS-Stil definiert die grafische Darstellung von HTML-Code und besitzt eine Vielzahl
von Gestaltungsmöglichkeiten.
Die Farbe wird in RGB-Anteilen (Rot-Grün-Blau) im hexadezimalen Format angegeben.
Die Farbe Rot entspricht dabei „FF0000“, wobei FF im Hex-Format der Zahl 255 im dezi-
malen Format entspricht. Da die ersten beiden Stellen der Farbangabe die Rot-Angabe
darstellt, wird bei „FF0000“ der maximale Rot-Anteil gesetzt. Die Farbe besitzt weder
Grün-, noch Blau-Anteile. Somit ergibt sich ein strahlendes Rot als Ausgabe bei einem
negativen Wert:
}
else{
?><h2>Der Wert ist <b>gleich</b> 10.</h2><?php
}
}
?>
</body></html>
<?php
$wert=-5.3;
if($wert<0){
$farbe='#FF0000';
}
else{
if($wert>0){
$farbe='#00FF00';
}
else{
$farbe='#000000';
}
}
?>
<html><body>
<font face="Arial,Helvetica" color="<?php echo $farbe?>">
<?php echo $wert?>
</font>
</body></html>
Listing 2.26: Definition einer Farbe für eine HTML-Ausgabe
Listing 2.25: Prüfung eines Werts mit unterbrochenem PHP-Code
Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark.
[...]... if-then-else-Verzwei- PHP–Endlich objektorientiert Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark 41 2 – Die Sprache PHP: Prozedural gung lösen Der Fragezeichenoperator, der auch als Trinitätsoperator bezeichnet wird, bietet eine Lösung in einer einzigen Zeile bei minimalem zusätzlichen Text: < ?php $alter=50; ($alter < ?php echo... < ?php for($i=1;$i, Spalte < ?php echo $j?>< ?php } echo(''); } ?> Listing 2.34: Eine Tabelle mit 8 Spalten durch verschachtelte for-Schleife Abbildung 2.9: Eine dynamisch erzeugte HTML-Tabelle PHP–Endlich objektorientiert Please purchase... Ausgabe nicht dem erhofften Ergebnis Lediglich „ Welt!“ erscheint auf dem Bildschirm: PHP–Endlich objektorientiert Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark 55 2 – Die Sprache PHP: Prozedural < ?php $a='Hallo'; function Ausgabe(){ return $a.' Welt!'; echo('zu spät'); } ?> < ?php echo Ausgabe()?> Listing 2.45: Keine erfolgreiche Ausgabe durch... Content-Management-Systeme wie Typo3 oder Drupal lösen diese Probleme, sind jedoch selbst in PHP geschrieben PHP besitzt also eine Möglichkeit, wie gewünschte Modularität zu realisieren Das geschieht insbesondere durch die Verwendung folgender Befehle: require('datei .php' ) require_once('datei .php' ) include('datei .php' ) include_once('datei .php' ) Alle Befehle binden Quelltext aus einer anderen Datei in das... Inkrementoperation $i++ vergessen, erhalten Sie eine Endlosschleife: < ?php $data=Array(); $i=0; Listing 2.40: Füllen eines Datenfelds und dessen Auslesen mit zwei while-Schleifen PHP–Endlich objektorientiert Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark 51 2 – Die Sprache PHP: Prozedural while($i Listing 2.48: Eine Funktion wird auf ein Array angewendet (Forts.)... switch-Anweisung sehr übersichtlichen Quellcode: < ?php $note=2; switch($note){ case 1: $noteText="Sehr gut"; break; case 2: $noteText="Gut"; break; case 3: $noteText="Befriedigend"; Listing 2.31: Eine Note per switch-Anweisung PHP–Endlich objektorientiert Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark 43 2 – Die Sprache PHP: Prozedural break; // Fälle 4 bis 6 default: $noteText="... bei der foreach-Schleife verzichtet Dadurch werden Endlosschleifen durch falsche Inkrementierung und Verletzungen der Datenfeldgrenzen ver- PHP–Endlich objektorientiert Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark 49 2 – Die Sprache PHP: Prozedural mieden Stattdessen wird als erster Parameter das zu untersuchende Datenfeld, hier: $data, angegeben Hinter dem Schlüsselwort... sehr viele Elemente enthalten kann: < ?php $data=Array(); $data[]="Hugo"; $data[]="Uli"; $data[]="Frank"; $data[]="Olga"; $suche="Frank"; $gefunden=FALSE; foreach($data as $index => $wert){ if($wert==$suche){ echo($wert.' gefunden!'); $gefunden=TRUE; break; } Listing 2.42: Eine Suchfunktion in einem Datenfeld und das break-Kommando PHP–Endlich objektorientiert Please purchase PDF Split-Merge . mit unterbrochenem PHP- Code
Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark.
Grundlegende Syntax
PHP – Endlich objektorientiert. watermark.
Grundlegende Syntax
PHP – Endlich objektorientiert 45
2.1.4 Schleifen
Im letzten Kapitel wurden verschiedene PHP- Befehle vorgestellt, um die