|
T u t o r i a l
|
|
PHP Tutorial > Kapitel 3: Funktionen einsetzen und Arrays sortieren
Antworten zu Fragen aus Kapitel 2
1. Was ist ein Formular?
Mit einem Formular kann ein Benutzer Daten an dein PHP Script schicken.
Dieses Wertet diese Daten anschließend aus.
2. Was ist ein Array?
$variablenname["schlüssel"] = "wert";
Ein Variablentyp der mehrere Werte anhand verschiedener Schlüssel speichern
kann.
PHP Funktionen benutzen
Funktionen sind ein Teil einer Programmiersprache. Es gibt Funktionen die
von der Programmiersprache zur Verfügung gestellt sind und Funktionen die man
selber schreiben kann. Auf das selber schreiben kommen wir später zurück.
Zunächst solltest Du dich mit dem PHP Handbuch auf php.net und der Verwendung
der dort gelisteten Funktionen vertraut machen.
Fast alle Funktionen sind auf php.net ausführlich dokumentiert. Eine Funktion
kannst Du wie folgt aufrufen:
funktionsname($wert1, $wert2, $wert3, ....);
Dabei kann diese Funktion etwas zurückgeben. Eine Zeichenkette, eine Zahl, eine
Kommazahl, einen Wahrheitswert, ein Array, ... eben jeden Datentyp. Du kannst
diesen Wert "auffangen" indem du eine Variable mit der Funktion deklarierst:
$variable_mit_funktions_wert = funktionsname($wert1, $wert2, $wert3, ....);
Einer Funktion können Werte angegeben werden die dieser
Funktion zeigen wie sie reagieren soll.
Zur Erläuterung:
Ich will die aktuelle Uhrzeit herausfinden.
Tutorial_Kapitel3_Beispiel_1.php:
<?php
echo "Es ist ".date("G:i:s")." Uhr!";
?>
|
Dieses Beispiel gibt zum Beispiel folgenden Satz
aus:
Es ist 8:47:40 Uhr!
Das Script wäre ohne der Funktion date() nur sehr schwer zu programmieren.
Funktionen sind dazu da um dem Programmierer arbeit zu ersparen. Wie Du siehst
hat date() in diesem Beispiel einen angegebenen Wert. Und zwar "G:i:s". Um die
richtigen Parameter angeben zu können muss ich auf php.net schauen und
herausfinden welche Werte für mich interessant sind. G = Stunde, i = Minute, s =
Sekunde. Die Doppelpunkte sind einzig und allein als "Trennung" da und ändern
daran nichts.
Begebe dich auf http://www.php.net/date
und sehe dir diese Dokumentationsseite an. Zuerst siehst Du den Funktionsnamen,
dann die PHP Version, die diese Funktion unterstützen. Wenig weiter darunter ist
die Funktionsbeschreibung. Die erste Zeile, die die Funktionsrückgabe und
Funktionsparameter erklärt ist für die meisten Programmierer das
Ausschlaggebende.
string date ( string format [, int timestamp] )
An der ersten Stelle steht der Rückgabetyp. Also welchen Variablentyp die
Funktion zurückgibt. Diese sind:
string = Zeichenkette
int = Zahl
double = Kommazahl
resource = Eine Verbindungsresource
array = Ein Array
object = Ein Objekt
void = Nichts
mixed = Ein verschiedenes Ergebnis (Es kann bei verschiedenen Fällen
z.B.: string oder int zurückgegeben werden)
Daneben befindet sich der fettgedruckte Funktionsname und eine Klammer. In
dieser Klammer sind die anwendbaren "Parameter", Werte die man der Funktion
zuteilen kann. Hier steht auch wieder der Variablentyp vor dem Parameter. Wenn
ein Programmierer einer Funktion Daten übergibt, sollte er darauf achten, dass
der Datentyp überein stimmt. Also sollte man bei date an der ersten Stelle nicht
eine Kommazahl sondern eine Zeichenkette angeben, sonst bekommt man womöglich
einen Fehler ausgeschrieben.
Wieso ist nun "int timestamp" in einer eckigen Klammer? Das bedeutet, dass
dieser Parameter nur bei Bedarf übergeben wird. Was ein timestamp ist, wird
später erklärt. Wichtig ist jetzt nur, wie man eine Funktion richtig einsetzt.
Arrays einsetzen und sortieren
Unter http://php.net/manual/en/ref.array.php findest Du die Referenz der Array
Funktionen mit denen Du Arrays unter anderem sortieren kannst.
Im folgenden Beispiel werden mehrere Array Funktionen eingesetzt.
Tutorial_Kapitel3_Beispiel_2.php:
<?php
$array["gabi"] = 53546; $array["fritz"] = 23246; $array["max"] = 86543; $array["ferdinand"] = 78908; $array["manuel"] = 10354;
echo "Es gibt ".sizeof($array)." Kandidaten für das Gewinnspiel!";
arsort($array);
foreach($array as $key => $val) { echo $key." = ".$val.""; }
?>
|
Dieses Beispiel gibt folgendes zurück:
Es gibt 5 Kandidaten für das Gewinnspiel!
max = 86543
ferdinand = 78908
gabi = 53546
fritz = 23246
manuel = 10354
Mit sizeof() bekomme ich die Anzahl
der Array Elemente. Diese Funktion wird weiters auch wichtig für Schleifen sein,
die im nächsten Kapitel besprochen werden. Hier benutzen wir die "foreach"-Schleife
die durch das Array durchläuft. Jedes Array besitzt einen unsichtbaren Pointer;
einen "Datenzeiger" der auf den letzten zugefügten Wert zeigt. Eine Funktion wie
arsort()
kehrt den Datenzeiger um und stellt ihn in die gewünschte Reihenfolge.
arsort()
zum Beispiel sortiert das Array nach dem Wert (also den Zahlen, es können auch
Buchstaben sein) in "verkehrter" Reihenfolge wie es asort()
machen würde. (Also vom höchsten zum kleinsten.) In dem Beispiel habe ich die
Schlüsselwerte mit Namen bestückt. Wenn man dieses array nun mit der Funktion
sort() sortieren würde, wäre die Liste nach
alphabetischer Reihenfolge sortiert. rsort()
würde dies wiederum in verkehrter Reihenfolge tun. Wenn man mit Arrays arbeiten
will sollte man wenigstens wissen wo man nachschauen kann um die besten
Sortierfunktionen griffbereit zu haben.
Klicke auf den Button "» Übungen zu diesem Kapitel «" um weitere Beispiele zu
Arrays zu sehen.
Fragen zu diesem Kapitel:
1. Wie kann man Funktionen aufrufen?
2. Wo kann man die Funktionsreferenz finden?
3. In welche Reihenfolgen kann man Arrays sortieren?
Antworten in Kapitel 4
Alle Beispiele von Kapitel 3
|
|
|