|
|
|
PHP - Anleitung
PHP wurde 1995 von Rasmus Lerdorf entwickelt und ist heut eine der weit verbreittesten Web-Programmiersprachen. Am Anfang der PHP - Ära war PHP mit einer anderen Programmiersprache (Perl) sehr ähnlich, aber durch Weiterentwicklung wurde es noch leistungsfähiger als Perl. Heute ist es Standard für dynamische Websites .
PHP ist serverseitig, das heißt sie wird am Server ausgeführt und nicht im Browser, wie zum Beispiel JavaScript. Sie wird am Server "geparst", das heißt in HTML umgewandelt.
Aller Anfang ist schwierig, aber nicht so sehr Zuerst einmal grundlegende Regeln:
Um deine selbstgemachten Skripts auch zu testen, ohne sie ins Internet zu stellen, brauchst du eine virtuellen Webserver, der die Skripts auf deinem Computer testet. Es gibt viele verschiedene Webserver: Apache, ISS, ... . Ich empfehle aber OmniSecure, ein kostenloser und guter virtueller Webserver. Das Programm findet ihr unter www.omnicron.ca. Es ist eine laufzeitbeschränkte Version, kann aber sehr lange genutzt werden. Wenn die Lizenz abgelaufen ist geht ihr wieder auf die Omnicron-Webseite. dort findet ihr sicherlich eine neue Version. Nach dem Installationsvorgang seht ihr ein Trayicon in der Taskleiste, falls nicht, startet ihr das Programm manuell unter Start->Programme->OmniSecure->OmniSecure 3.0 Web Server. Macht einen Rechsklick auf das Trayicon. Darauf öffnet sich ein Kontextmenü. Wählt Properties (auf Deutsch "Einstellungen") aus, dann klickt dann auf "Default Virtual Settings" an. Nun seht ihr ein Menü mit vielen Tabreitern. Wählt "Server Root" aus und gebt den vollständigen Pfad zu eurem Skript an: z.B.: "D:/Eigene PHP-Skripte". Dann wählt ihr "Default Index" an und gebt den Dateityp ein, der automatisch startet, wenn du "localhost aufrufst. Es können auch mehrere Dateitypen eingegeben werden: z.B.: "index.php, index.htm, index.html". Vergiss aber nicht: Es muss auf jeden Fall index+Dateiendung heißen!!!. Wenn keiner der eingegebenen Dateien vorhanden sind, öffnet sich ein Inhaltsverzeichnis. Gib bei "Admin Email" die E-Mail Adresse des Adminstrators ein, also deine . Uff, jetzt können wir endlich mit PHP anfangen ;-)
Texte ausgeben, leichter als gedacht Um einen Text auszugeben kommt der "echo" Befehl in Einsatz. Man kann auch "print" verwenden, aber mir ist "echo" sympatischer. Erstelle in einem Editor eine leere Seite und schreibe folgendes hinein:
<?php
echo "Hello World!"; ?> Ausgabe:
Hello World!
Vergiss nicht, es muss nach jedem Befehl ein Semiklon (;) gesetzt werden. Der Text, den du ausgeben willst muss unter Anführungszeichen (") gesetzt werden. Speichere den Skript im Verzeichnis, dass du bei OmniSecure unter "Default Index" angegeben hast. Nenne den Skript "index.php". Jetzt hast du deine ersten selbstgemachten PHP - Skript! PS: Teste den Skript gleich, indem du "http://localhost" in einem Browser angibst. Nun müsste "Hello World" dortstehen.
Variablen, nicht so öde wie in Mathe Wenn du an Variablen denkst, fällt dir sicherlich sofort Mathematik ein, aber in PHP sind sie ein Hauptbestandteil. In PHP werden Variablen verwendet, um Inhalte (z.B.: Texte oder Zahlen) darin zu speichern. Du kannst deine Variablen beliebige Namen geben, solltest aber Groß- und Kleinschreibung beachten. Damit PHP auch erkennt, dass es sich um eine Variable handelt wird davor das Dollarzeichen ($) gesetzt. Eines ist ganz wichtig: Ihr könnt keine Zahlen hinter dem $ setzen, sonder müsst einen Unterstrich (_) zuerst machen: z.B.: Das geht: $_2Steine, das geht nicht: $2Steine. Das sieht ungefähr so aus:
<?php
$uhrzeit = "16:30 Uhr";?> Wir wollen aber, dass der Text auch ausgegeben wird:
<?php
$uhrzeit = "16:30 Uhr";echo "Ich kam um ",$uhrzeit,".";?> So schaut die Ausgabe aus:
Ich kam um 16:30 Uhr.
Ihr fragt euch wahrscheinlich, warum man die Aufgabe mit Variablen erledigt. Ganz einfach, weil man Variablen so oft benutzen kann wie möglich:
<?php
$Otto_ankunft = "16:30 Uhr";$Franz_ankunft = "17:20";$Karl_ankunft = "17:40";echo "Otto kam um ",$Otto_ankunft,", Franz kam um ",$Franz_ankunft," und Karl kam um ",$Karl_ankunft,".";?> Ausgabe:
Otto kam um 16:30 Uhr, Franz kam um 17:20 und Karl kam um 17:40.
Eine PHP - Seite wird ja nicht vom Browser ausgeführt, sondern vom Server geparst. So sieht der Quelltext von einer PHP - Datei aus:
<?php
$uhrzeit = "16:30 Uhr";echo "Ich kam um ",$uhrzeit,".";?> So wird er zurückgegeben, nämlich als HTML-Tag:
Ich kam um 16:30 Uhr.
PHP hat nämlich den Vorteil, dass keiner den wirklichen Quelltext zu sehen bekommt. Daher ist PHP kopiersicher. Maskierungen und Formatierungen Maskierungen und Formatierungen werden verwendet, um einen Text zu verschönern.
Noch etwas: Du kannst, wenn du statt den Anführungszeichen dieses Zeichen (') benutzt auch HTML-Formatierungen nutzen, kannst aber keine Variablen einsetzen. Beispiel:
<?php
echo '<font color="red">Dein Text</font>';?>
Beispiel in 3 Möglichkeiten: 1.Möglichkeit
<?php
echo "Unterstreichen: ";echo "<u>Ich bin unterstrichen</u>";?> <br> </font> <?php echo "Kursiv: ";echo "<i>Ich bin kursiv</i>";?> <br> </font> <?php echo "Fett: ";echo "<b>Ich bin fett</b>";?> <br> </font> <?php echo "Link: ";echo "<a href=\"http://sebibarth.funpic.de\">Sebastian Barth</a>";?> 2.Möglichkeit
<?php
echo 'Unterstreichen: ';echo '<u>Ich bin unterstrichen</u>';?> <br> </font> <?php echo 'Kursiv: ';echo '<i>Ich bin kursiv</i>';?> <br> </font> <?php echo 'Fett: ';echo '<b>Ich bin fett</b>';?> <br> </font> <?php echo 'Link: ';echo '<a href="http://sebibarth.funpic.de">Sebastian Barth</a>';?> 3.Möglichkeit:
<?php
echo 'Unterstreichen: <u>Ich bin unterstrichen</u><br> </font> Kursiv: <i>Ich bin kursiv</i> <br> </font> Fett: <b>Ich bin fett</b> <br> </font> Link: <a href="http://sebibarth.funpic.de">Sebastian Barth</a>' ;?> Bei allen 3 Möglichkeiten erscheint folgender Text:
Unterstreichen: Ich bin unterstrichen
Kursiv: Ich bin kursiv Fett: Ich bin fett Link: Sebastian Barth
z.B.: Ausgabe:
C:\Eigene Dateien\Bilder\ich.jpg
z.B.:
<?php
echo "\$-Zeichen spielen in PHP eine wichtige Rolle";?> Ausgabe:
$-Zeichen spielen in PHP eine wichtige Rolle
Datums- und Zeit- Funktionen, spielend die Zeit erlernen Um ein Datum aufzurufen verwendest du: echo date("Funktion");. Das Wort Funktion wird durch die Buchstaben in der linken Tabelle ersetzt.
z.B.:
<?php
echo date( "z");?> Ausgabe:
84
Die Funktion "z" gibt den Tag des Jahres zurück.
Man kann auch einen Punkt (.), einen Doppelpunkt (:), und Beistriche (,) zwischen den Anführungszeichen setzen. z.B.:
<?php
echo date( "G:i:s");?> Ausgabe:
16:26:05
Mit Vergleichsoperatoren lassen sich Werte miteinander vergleichen. Der erste Operator ist der Ist-Gleich Operator: Da ein einfaches Ist-Gleich in PHP einer Variablen einen Wert zuweist, wird für diesen Zweck ein doppeltes verwendet.
<?php
$variable1 == $variable2"PHP" == "PHP"$variable2 == "PHP""PHP" == $variable2?> Es lassen sich sowohl Variablen als auch Werte miteinander vergleichen. Das Ergebnis eines solchen Vergleiches ist immer true oder false. Enthält die $variable 1 im oberen Beispiel z.B.: 10, und die $variable2 "PHP" ist das Ergebnis false. Die Zeile 10 == 10 hat das Ergebnis true (weil 10 ist gleich 10 ist)
Das Gegenteil zu Ist-Gleich ist der Operator Ungleich. Dieser schreibt sich (!=)
<?php
10 != 5"PHP" != "Perl"20 != 20?> Die ersten beiden Zeilen geben den Wert true zurück. In der allerletzten Zeile wird geprüft, ob 20 ungleich 20 ist, und gibt daher den Wert false zurück (weil 20 gleich 20 ist)
Die nächsten Operatoren sind kleiner und größer als. < steht für "kleiner als" und > für "größer als"
<?php
10 > 99 > 817 > 17?> In diesem Fall haben die zwei oberen Vergleiche das Ergebnis true. Das letzte hat jedoch den Wert false (weil 15 ist nicht größer als 15)
Der letzte Operator überprüft nicht nur "größer- und kleiner als", sondern auch zugleich ob die Werte gleich groß sind. ">=" steht für größer gleich, "<=" steht für kleiner gleich.
<?php
10 <= 1515 <= 1515 >= 1015 >= 15?> In diesem Beispiel sind alle Werte true. Du fragst dich jetzt sicher, warum wir so etwas brauchen, du wirst aber die Antwort im nächsten Kapitel dafür finden.
if, else if, else - Anwendungen Mit einer if-Anweisung ist es möglich eine Bedingung zu prüfen und nur dann, wenn die Bedingung zutrifft, etwas Bestimmtes zu machen. if-Gerüst:
<?php
if (Bedingung) { Anweisung } ?> Die Bedingung, die geprüft werden sollst du in Klammern nach dem einleitenden if setzen. Danach kommt die Anweisung in geschwungenen Klammer, die ausgeführt wir, wenn die Bedingung erfüllt ist.
<?php
if ( $name = "Benedikt"){ echo "Hallo Benedikt, toll das du da bist!";} ?> Hierbei wurde (z.B. durch eine Formulareingabe) ein Username übergeben, der in der Variable $name gespeichert ist. Die if-Anweisung testet jetzt, ob die Variable $name Benedikt enthält. Wenn dies zutrifft, wird die Anweisung gemacht. Doch was passiert, wenn die Variable $name nicht Benedikt enthält. Dafür gibt es die ele-Anweisung. Grundgerüst:
<?php
if (Bedingung) { wenn Bedingung erfüllt .... Anweisung } else { wenn die if-Anweisung nicht zutrifft .... Anweisung } ?>
z.B.:
<?php
if ( $name == "Benedikt"){ echo "Hallo Benedikt, toll das du da bist!";} else { echo "Also Benedikt bist du sicher nicht!";} ?> Auch hier wird getestet, ob der Name, der in der Variable gespeichert ist "Benedikt" lautet - trifft es zu - wird "Hallo Benedikt, toll das du da bist!" ausgegeben. Steht in der Variable $name irgendein anderer Wert (bzw. gar kein Wert) wird zur else-Anweisung gesprungen und der Text, der im "echo" Befehl steht ausgegeben. Bis hier alles klar? Nun zeige ich dir, wie man mehrere if-Anweisungen miteinander verbindet:
<?php
if ( $name == "Benedikt"){ echo "Hallo Benedikt, toll das du da bist!";} else if ( $name == "Luki"){ echo "Hallo Lukas, freue mich, dass du hier bist";} else if ( $name = "Theodor"){ echo "Hi Theo, warst schon lange nicht mehr hier";} else { echo "Also Benedikt, Lukas und Theo bist du sicher nicht!";} ?>
Mathematische Operatoren sind eigentlich nur die mathematischen Grundrechnungsarten.
z.B.:
<?php
$a = 5;$b = 7;$c = $a + $b;echo $c;?> Ausgabe:
12
<?php
while(Bedingung) { wenn Bedingung erfüllt ... Anweisung } ?> z.B.:
<?php
$a = "0";while( $a<=12){ echo $a++," | ";}; ?> Ausgabe:
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 |
Die $a hat den Wert null. Sie wird durch "$a++" in der "echo" - Zeile jedes Mal um 1 erhöht, bis der Wert kleiner als 12 (nämlich 11) ist. Das Zeichen "|" wird als Zeichen zwischen jeden Wert eingefügt. Wenn wir aber zwischen "$a<12" ein Gleich-Zeichen (=) einfügen( der Skript schaut dann so aus: "$a<=12", wird der Wert 12 auch noch ausgegeben: Skript:
<?php
$a = "0";while( $a<=12){ echo $a++," | ";}; ?> Ausgabe:
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |
Das Gleiche funktioniert auch mit Buchstaben:
<?php
$a = "a";while( $a<"z"){ echo $a++," & ";}; ?> Ausgabe:
a & b & c & d & e & f & g & h & i & j & k & l & m & n & o & p & q & r & s & t
& u & v & w & x & y &
<?php
for (Bedingung+Anweisung) { wenn Bedingung erfüllt ..... Ausgabe } ?> Die for Schleife durchläuft die Schleife solange, bis sie einen bestimmten Wert erreicht hat. z.B.:
<?php
for( $a = 0;$a<15;$a++){ echo "\$a"," ist jetzt",$a,"<br>";} ?> Ausgabe:
$a ist jetzt0
$a ist jetzt1 $a ist jetzt2 $a ist jetzt3 $a ist jetzt4 $a ist jetzt5 $a ist jetzt6 $a ist jetzt7 $a ist jetzt8 $a ist jetzt9 $a ist jetzt10 $a ist jetzt11 $a ist jetzt12 $a ist jetzt13 $a ist jetzt14 Ein anderes Beispiel:
<?php
for( $a = 0;$a<15;$a++){ echo "\$a"," ist jetzt",$a,"<br>";} ?> Ausgabe:
$a ist jetzt0
$a ist jetzt1 $a ist jetzt2 $a ist jetzt3 $a ist jetzt4 $a ist jetzt5 $a ist jetzt6 $a ist jetzt7 $a ist jetzt8 $a ist jetzt9 $a ist jetzt10 $a ist jetzt11 $a ist jetzt12 $a ist jetzt13 $a ist jetzt14 Ein anderes Beispiel:
<?php
for( $a = 1;$a<15;$a++){ $c = $a +$a;echo "Die Summe von ",$a," und ",$a," ist gleich ",$c,".<br>";} ?> Ausgabe:
Die Summe von 1 und 1 ist gleich 2.
Die Summe von 2 und 2 ist gleich 4. Die Summe von 3 und 3 ist gleich 6. Die Summe von 4 und 4 ist gleich 8. Die Summe von 5 und 5 ist gleich 10. Die Summe von 6 und 6 ist gleich 12. Die Summe von 7 und 7 ist gleich 14. Die Summe von 8 und 8 ist gleich 16. Die Summe von 9 und 9 ist gleich 18. Die Summe von 10 und 10 ist gleich 20. Die Summe von 11 und 11 ist gleich 22. Die Summe von 12 und 12 ist gleich 24. Die Summe von 13 und 13 ist gleich 26. Die Summe von 14 und 14 ist gleich 28.
Do-Schleifen sind eigentlich mit den while-Schleifen sehr ähnlich.
<?php
do {Anweisung} while (Bedingung); ?> Zuerst wird die Anweisung ausgeführt, dann wird die Bedingung ausgeführt. z.B.:
<?php
$a = "1";do {echo $a++, " ";}while( $a<10);?> Ausgabe:
1 2 3 4 5 6 7 8 9
noch ein weiteres Beispiel:
<?php
$a = 1;$b = 1;do {echo $a++," und ",$b++," = ",$a-1 + $b-1,"<br>";}while( $a<=10);?> Ausgabe:
1 und 1 = 2
2 und 2 = 4 3 und 3 = 6 4 und 4 = 8 5 und 5 = 10 6 und 6 = 12 7 und 7 = 14 8 und 8 = 16 9 und 9 = 18 10 und 10 = 20
Arrays sind eine Ansammlung von Wörtern oder Zahlen. Ein Array fängt mit dem Wert "0" an. Beispiel:
<?php
$Sachen = array("Pommes","Big Mac`s","Hamburger","Früchtetaschen","Chicken Nuggets");$Getränk = 0;echo "Ich esse gerne ",$Sachen[$Getränk];?> Ausgabe:
Ich esse gerne Pommes
noch`n Beispiel:
<?php
$Sachen = array(1=>"der Computer", 2=>"die Tastatur", 3=>"die Maus", 4=>"der USb-Anschluss", 5=>"das Laufwerk", 6=>"die Festplatte", 7=>"die Grafikkarte");$Computerteil = 6;echo "Das allerwichtigste beim Computer ist ",$Sachen[$Computerteil],".";?> Ausgabe:
Das allerwichtigste beim Computer ist die Festplatte.
Die Funktion "foreach" ist häufig in Gebrauch mit einem Array. Es ist auch möglich nicht nur einen bestimmten Wert eines Arrays anzusprechen, sondern auf einmal den ganzen Inhalt von einem Array auszugeben. Dies passiert mit der Funktion "foreach'". ein Beispiel:
<?php
$Sachen = array("Sonne","Mond","Sterne","Planeten","Galaxie","Milchstraße");foreach( $Sachen as $die_wichtigsten_Teile)echo $die_wichtigsten_Teile,"<br>";?> Ausgabe:
Sonne
Mond Sterne Planeten Galaxie Milchstraße
In PHP ist es sehr gut, wenn man einen Text mit Kommentaren versieht. Dadurch kann der Benutzer, der sich einen Skript downloaded und anschaut gleich verstehen, was wo gemacht wird. 3 verschiedene Arten von Kommentaren: 1. Möglichkeit:
<?php
//einzeiliges Kommentar ?> 2. Möglichkeit:
<?php
#einzeiliges Kommentar ?> 3. Möglichkeit:
<?php
/* * * mehrzeiliges Kommentar * * */ ?>
Um das Datum auf Deutsch ablesen zu können, brauchen wir wieder Arrays
<?php
$day = date("w");$days = array("Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag");echo $days[$day];?> Ausgabe:
Freitag
Nun ein Skript, der von mir entwickelt wurde. Hier kommt sogar schon ein mehrzeiliges Kommentar vor. Ihr dürft aber diesen Skript nicht kopieren oder in einer Art vervielfältigen. Diesen Skript könnt ihr unter http://sebibarth.se.funpic.de/Downloads/Scripts/PHP/Datum-_und_Uhrzeit.zip
<?php
// Gibt den Tag der Woche zurück, 0 steht für Sonntag, 1 steht für Montag, u.s.w .$day = date("w");// Der Array fängt bei 0 an, 0 steht für Sonntag, 1 steht für Montag $days = array("Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag");// Gibt den Tag des Monats zurück $date = date("j");// Gibt den Monat zurück, 1 steht für Jänner, 2 steht für Februar, u.s.w. $month = date("n");// Da der Array normalerweise bei 0 anfängt mussten extra Zahlen angegeben werden $months = array(1=>"Jänner", 2=>"Februar", 3=>"März", 4=>"April", 5=>"Mai", 6=>"Juni", 7=>"Juli", 8=>"August", 9=>"September", 10=>"Oktober", 11=>"November", 12=>"Dezember");// Gibt das Jahr zurück $year = date("Y");// Gibt die Stunden des Tages zurück $hours = date("H");// Gibt die Minuten des Tages zurück $minutes = date("i");// Gibt die Sekunden der Tage zurück $seconds = date("s");// Die Ausgabe der Variablen echo $days[$day],", der ",$date,". ",$months[$month]," ",$hours,":",$minutes,":",$seconds;/******************************************************************** * Dieser Skript wurde von Sebastian Barth entwickelt. * * Der Skript darf auf Websites angeboten und eingesetzt werden, * * solange dieser Hinweis bleibt. * * http://sebibarth.funpic.de * * @version $1.0$ * * @copyright 2005 * ********************************************************************/
?> <br><br> <p align="right"><font size="1">Entwickelt von <a href="http://sebibarth.funpic.de">Sebastian Barth</a></font></p>
Ausgabe:
|
Counter:
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Partnerseiten:
lukashetzi.funpic.de
,
Senden Sie E-Mail mit Fragen oder Kommentaren zu dieser Website an:
sebastian.barth@gmx.at
|