|
Das Buch learninPHP wurde uns freundlicherweise vom Autor Marvin Momberg zur
Verfügung gestellt. Sie haben die Möglichkeit, sich das Buch auf der
Homepage des Autors herunterzuladen.
PHP-Finder ist eines der wenigen Portale, das dieses Buch präsentiert.
Das Buch wird hier nur in Auszügen präsentiert.
|
Kapitel 2: Grundlagen | Arrays | Was sind überhaupt Arrays? Diese Frage werden sie sich als ersten stellen falls sie noch nicht programmiert haben. Arrays sind eine Art von aneinandergereihten Variablen. Man bezeichnet Arrays auch als Feldvariablen. Eine Variable kann nur einen Wert speichern, ein Array kann beliebig viele Werte speichern. Das hört sich kompliziert an, ist aber besser an einem Beispiel zu erklären.
$ein_array = array("Inhalt 1", "Inhalt 2", "Inhalt 3");
Mit der Funktion array() definieren sie ein Array. Den Array speichern wir wie eine Variable. Da allerdings mehrere Werte in einem Array enthalten sind, ruft man die Werte anders ab. Jeder Wert eines Arrays hat einen Schlüssel mit dem man den Wert abfragen kann. Wenn sie den Array so definieren wie im obrigen Beispiel fragen sie die Werte wie folgt ab:
$ein_array = array("Inhalt 1", "Inhalt 2", "Inhalt 3"); print $ein_array[0];
Gibt Inhalt 1 aus. Da wir den Werten keine Schlüssel zugeordnet haben, wird dies von PHP automatisch erledigt. PHP fängt an bei 0 zu zählen. Um einen spezifischen Wert eines Arrays abzufragen, benutzen sie folgendes Schema: $array_name[Schlüssel]. Anstatt PHP die Indexierung eines Arrays zu überlassen, können sie aber auch selber den Werten Schlüssel zuordnen. Dazu benutzen sie am besten eine andere Art ein Array zu erstellen.
$ein_array[1] = "zweiter Wert"; $ein_array[2] = "dritter Wert"; $ein_array[0] = "erster Wert";
Am besten fangen sie selber auch immer an Arrayschlüssel immer mit 0 zu beginnen. Überhaupt macht es nicht viel Sinn Arrayschlüssel selber festzulegen. Wenn sie diese Art von Array-Erstellung nutzen wollen, aber die Indexierung der Schlüssel PHP überlassen wollen, lassen sie einfach die Zahlen weg die in den Arraybezeichnern ([ ]) stehen. Anstatt Arrays mit Nummern zu indexieren, können sie auch Zeichenketten, also Wörter als Schlüssel benutzen. Arrays mit Zeichenketten als Schlüssel nennt man assoziative Arrays. Beispiel:
$assoziativ = array("Udo"=>"männlich", "Annette"=>"weiblich"); print $assoziativ["Udo"];
Sie ordnen einem Wert einen Schlüssel und umgekehrt zu, indem sie nach folgenden Schema vorgehen: array("Schlüssel"=>"Wert"); Das Gleichheitszeichen mit nachfolgenden Grösser-Als-Zeichen zeigt nur, dass der Schlüssel auf diesen Wert zielt. Vergessen sie nicht die Anführungszeichen und die Kommas. Das Komma zeigt, dass der nächste Schlüssel mit dem nächsten Wert folgt und die Anführungszeichen sind ja immer bei Zeichenketten erforderlich. Dieses Beispiel würde eine Ausgabe im Browser von männlich erzeugen. Jetzt wissen sie wie man Arrays erzeugt und einzelne Werte abfragt. Aber was ist wenn sie ein Array komplexer ist und sie nicht genau wissen, wie er indexiert ist, oder wenn sie nicht jeden Wert einzeln mit print schreiben wollen? Dazu gibt es eine Anweisung mit der sie Arrays durchlaufen. Mit foreach() kann man Arrays Wert für Wert abfragen. Schema von
foreach(): foreach($array as $wert) { #PHPcode... }
Bei foreach() geben wir als erstes den Array an, den wir durchlaufen wollen. Bei jedem Durchlauf dieser Schleife wird der Wert des aktuellen Arrayelements in der Variablen $wert gespeichert. Vergessen sie nicht das "as", es stellt die Verbindung von dem übergebenen Array und der Wert-Variablen dar. Komplettes Beispiel für foreach():
<?php $websites = array("http://www.homer-sexuell.de", "http://www.selfhtml.de", "http://www.zdnet.de", "http://www.gibtsgarnicht.de"); foreach($websites as $wert) print "$wert<br>"; ?>
Ausgabe im Browser:

Das Array $websites wird von der foreach() Schleife durchlaufen und Wert für Wert in eine neue Reihe geschrieben. Wie bei allen Schleifen/Anweisungen kann man auch bei foreach() die geschweiften Klammern ({ }) weglassen, wenn nur ein Befehl wie z.B. print ausgeführt wird. Wenn sie assoziative Arrays mit foreach() durchlaufen wollen, sollten sie diese Schleife ein wenig anders verwenden. Zusätzlich wird eine Variable benötigt, die jeden Schlüsselnamen pro Durchgang speichert. Beispiel:
$array = array("deutsch"=>"Hallo", "englisch"=>"Hello", "franzoesisch"=>"Allo"); foreach($array as $schluessel=>$wert) { print "$schluessel = $wert<p>"; }
In jedem Durchgang der Schleife werden die beiden temporären Variablen $schluessel und $wert durch den aktuellen Schlüssel und den aktuellen Wert ersetzt. Zum Schluss dieses Unterkapitels über Arrays noch die Funktion sort() und asort(). Mit der Funktion sort() sortieren sie einen Array, mit rsort() in umgekehrter Reihenfolge. Sie müssen nur den Array übergeben und er wird sortiert. Beispiel:
$abc = array("a", "d", "e", "c", "b"); sort($abc); rsort($abc);
Erst haben wir mit der Funktion sort() das Array alphanumerisch sortiert. Alphanumerisch ist die selbe Art nach der Namen z.B. im Telefonbuch stehen. Danach haben wir die Funktion rsort() benutzt, die auch einen normalen Array benötigt, aber rsort() sortiert den Array in umgekehrter Reihenfolge. Sie können den Sortiermodus von sort() und rsort() von alphanumerisch auf numerisch ändern. Dazu schreiben sie sie:
sort($array, SORT_NUMERIC); rsort($array, SORT_NUMERIC);
Die beiden Funktionen sort() und rsort() sind nur ein verschwindend kleiner Teil von allen Array spezifischen Funktionen. Falls sie einmal nach einer Array-Funktion suchen benutzen sie das PHP Handbuch, das in allen Sprachen auch www.php.net erhältlich ist. | |
|
|
1 PHPhotoalbum DEUTSCH PHPhotoalbum mit automatischer Thumbnailerstellung, Statistiken, verschiedene Alben können angelegt [hits: 7841]
2 Photo Album System - updated! Komplexes Photo Album Sytem.
- mehrere Alben durch einfaches hinzufügen möglich (2 Zeilen)
- Aut [hits: 5507, downloads: 4025]
3 planetGalery Mit :: planetGalery :: haben Sie die Möglichkeit, schnell und einfach Bildergalerien auf Ihrer Inter [hits: 5429]
4 Ad Promotion Netzwerk Script Betreiben Sie Ihr eigenes >>>kostenloses<<< Promotion Netzwerk.
Banner Exchange, Popup Exchange ( [hits: 4871, downloads: 2445]
5 Ad Banner Exchange Script + Partner Programm + Ad Vermarktung Betreiben Sie Ihren eigenen Banner Exchange mit zusätzlicher Ad Funktion zur Vermarktung an Sponsore [hits: 3519, downloads: 3956]
Die Scripts sind nach Hits sortiert
|
1 PHP-Edit Kleiner Editor zum erstellen von PHP-Scripts. Außerdem gibt es die Funktion zum schnellen einfügen v [hits: 3600, downloads: 7212]
2 PHP-Triad Das Projekt "PHP Triad" hat sich all denen gewidmed, denen die Konfiguration eines Apache mit PHP un [hits: 2307, downloads: 5929]
3 Wampp / Lampp LAMPP (Linux + apache + mysql + php + perl) + WAMPP (windows + apache + mysql + php + perl) = XAMPP
[hits: 1918, downloads: 3165]
4 >e-novative> WAMP Kostenloser Installer für Apache, MySql und PHP unter Windows. Vollautomatische Installation und Kon [hits: 1607, downloads: 1543]
5 VBMyAdmin VBMyAdmin - Intranet & Internet Lösungen. Mit VBMyAdmin erstellen und verwalten Sie Ihre eigenen Dat [hits: 1531, downloads: 1454]
Die Downloads sind nach Hits sortiert
|
|