Teil von  SELFPHP   Teil von  Praxisbuch  Teil von  Arrays
Letztes Update: 16.08.2005 17:53:45


Navigation

Seite News *

Seite Startseite
Seite Über SELFPHP
Seite Werbung
Seite Kontakt
Seite Forum *
Seite Download *
Seite SELFPHP Banner *
Seite SELFPHP in Buchform
Seite Newsletter *
Seite Impressum

 
* Link führt ins Internet


Anbieterverzeichnis
Informieren Sie sich über die Unternehmen in unserem Anbieterverzeichnis!  

 


SELFPHP Forum
Fragen rund um die Themen PHP? In über 79.000 Beiträgen finden Sie sicher die passende Antwort!  


Newsletter
Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 



 

Arrays erzeugen




Arrays kann man auf unterschiedlichster Weise erzeugen. Wir stellen Ihn die Möglichkeiten zur Erzeugung eines Arrays im folgenden Abschnitt vor.


Indizierte Arrays

Um beispielsweise die Namen von bestimmten Personen zu speichern, können Sie indizierte Arrays verwenden. Hierzu benötigen Sie folgende Schreibweise:

$personen[] = "Matthias";
$personen[] = "Caroline";
$personen[] = "Gülten";
$personen[] = "Toni";


Daraus entsteht ein indiziertes Array. Der Index entsteht, indem jeder neue Wert an das Ende angehängt wird. Indizierte Arrays beginnen von 0 mit der Indizierung. Sie können natürlich auch gleich die Indexwerte einsetzen. Das folgende Beispiele entspricht dem vorhergehenden:
$personen[0] = "Matthias";
$personen[1] = "Caroline";
$personen[2] = "Gülten";
$personen[3] = "Toni";


Was die Indizierung bet kann man sich folgendes merken:
. Die Indizierung beginnt bei 0.
. Die letzte Indexnummer eines Arrays entspricht der Anzahl der Einträge bzw Elemente (n), weniger 1 (n-1).

Sie müssen bei Zuweisungen nicht gezwungenermassen Indizes angeben. Sie können beispielsweise ein leeres Array erzeugen um sicher zu gehen das der PHP-Interpreter dies erkennt und anschliessend das Array mit Werten füllen.
$daten = array();
$daten[] = "Erster Eintrag";
$daten[] = "Zweiter Eintrag";



array()

Als Alternative können Sie mit array() arbeiten.
$personen = array("Matthias","Caroline","Gülten","Toni");

Tipp: array() kann zusätzlich verschachtelt werden, um Arrays von Arrays von Arrays, usw. zu erzeugen. Hiermit lassen sich komplexe Datenstrukturen abbilden.


Zur Ausgabe der im Array enthaltenen Einträge gehen Sie, wie folgt vor:
echo "$personen[0]
";
echo "$personen[1]
";
echo "$personen[2]
";
echo "$personen[3]
";



Assoziative Arrays

Von assoziativen Arrays oder Hashes spricht man, wenn die Elemente im Array nicht über Indizes, sondern über Strings bzw. sog. Schlüssel angesprochen werden. Das bereits gezeigt Beispiel könnte als assoziatives Array, wie folgt aussehen:
$personen["P1"] = "Matthias";
$personen["P2"] = "Caroline";
$personen["P3"] = "Gülten";
$personen["P4"] = "Toni";


Zur Ausgabe der im Array enthaltenen Einträge gehen Sie, wie folgt vor:
echo $personen["P1"] ."
";
echo $personen["P2"] ."
";
echo $personen["P3"] ."
";
echo $personen["P4"] ."
";


Ein assoziatives Array lässt sich natürlich auch mit Hilfe von array() erzeugen. Hierfür benötigen Sie zur Angabe des Schlüssel den Operator =>.
$personen = array(
"P1" => "Matthias",
"P2" => "Caroline",
"P3" => "Gülten",
"P4" => "Toni"
);



Ausgabe

echo $personen["P1"] ."
";
echo $personen["P2"] ."
";
echo $personen["P3"] ."
";
echo $personen["P4"] ."
";


Dies bringt zwar keinen Performancegewinn, der Quelltext wird jedoch bei konsequenter Anwendung leichter lesbar. Echte Vorteile ergeben sich bei der Nutzung von Daten, deren Umfang und Struktur Sie nicht genau abschätzen können oder nicht kennen. Wenn Sie indizierte Arrays mit Zählschleifen abfragen, kommen nur numerische Indizes in Betracht. Der direkte Zugriff auf ein bestimmtes Element, dessen Index Sie nicht kennen, bleibt Ihnen verwehrt.


Zusatz - ein Array erzeugen, welches nicht mit dem Index 0 beginnt

Sie wollen einem Array mehrere Elemente auf einmal zuweisen, hierbei soll jedoch der erste Index nicht 0 sein, dann haben wir einen einfachen Tipp für Sie.

Veranlassen Sie array() dazu, einen anderen Index zu verwenden, indem Sie die Syntax mit dem Operator => verwenden.


Beispiel

$personen = array( 1 => "Matthias", "Caroline", "Gülten");


Ausgabe

echo $personen[1];

Übrigens ist diese Anpassung des Index nicht nur auf die Zahl 1 beschränkt. Sie funktioniert mit jedem Integer Wert.


Beispiel

$personen = array( 10 => "Matthias", "Caroline", "Gülten");


Ausgabe

echo $personen[10];
echo $personen[11];
echo $personen[12];


Sie können den Operator auch mehrmals innerhalb eines Aufrufs einsetzen.


Beispiel

$personen = array( 10 => "Matthias", "Caroline", 17 => "Gülten");


Ausgabe

echo $personen[10];
echo $personen[11];
echo $personen[17];


In PHP ist es sogar möglich, negative Zahlen im array()-Aufruf zu verwenden.


Beispiel

$personen = array( -10 => "Matthias", "Caroline", 17 => "Gülten");


Ausgabe

echo $personen[-10];
echo $personen[0];
echo $personen[17];


Dies funktioniert sogar bei Zahlen, die keine Integer Werte sind. Technisch gesehen ist das, was Sie dann erhalten, ein assoziatives Array.

Hinweis: Sie haben jederzeit die Möglichkeit numerische und String-Schlüssel in einer array()-Definition zu vermischen, vor dem Gebrauch dieser Möglichkeit ist jedoch abstand zu halten, da dies zu Verwirrung und Fehlern führen kann.



 


Terminologie
 




 sponsored by

Host Europe


HighText iBusiness


Host Europe




© 2001-2006 E-Mail SELFPHP - Damir Enseleit, info@selfphp.deImpressumKontakt
© 2005-2006 E-Mail PHP5 Praxisbuch - Matthias Kannengiesser, m.kannengiesser@selfphp.de