burghi'sphp-dummies.de
PHP für Einsteiger und Fortgeschrittenere - an laufenden Scripten erklärt
10.02.2012, 09:31 Uhr - Impressum
Wie kann man aber nun auf die einzelnen Elemente des Arrays zugreifen?
Mit dem Befehl "echo" kommt man da nicht weit...:
<?php
$DVD = array("Ocean's Eleven", "Herr der Ringe - Die zwei Türme", "Herr der Ringe - Die Gefährten",
"Das Leben des Brian", "Fluch der Karibik", "Ice Age", "Findet Nemo", "Fight Club", "Road Trip",
"American History X", "Roter Drache", "Stigmata");

echo $DVD;
?>
"echo" kann kein ganzes Array ausgeben.
Um z.B. aus Testgründen ein Array auszugeben, gibt es die Funktion "print_r()".
Sie gibt das Array in einer (im Quellcode erkennbaren) Struktur zurück.
Schau dir deswegen den Qullcode an ! ("Quellcode der Ausgabe")
Ich schrieb deswegen "aus Testgründen", weil diese Ausgabe in der Praxis praktisch nie so ist, dass man sie verwenden könnte:
<?php
$DVD = array("Ocean's Eleven", "Herr der Ringe - Die zwei Türme", "Herr der Ringe - Die Gefährten",
"Das Leben des Brian", "Fluch der Karibik", "Ice Age", "Findet Nemo", "Fight Club", "Road Trip",
"American History X", "Roter Drache", "Stigmata");

print_r($DVD);
?>
In der Ausgabe der Funktion print_r() erkennt man auch die Indize der Einträge. Indize ist der Plural von "Index"
(glaube ich *g*)
Um auf einen einzelnen Eintrag eines Arrays zuzugreifen benutzt man diesen Index:
<?php
$DVD = array("Ocean's Eleven", "Herr der Ringe - Die zwei Türme", "Herr der Ringe - Die Gefährten",
"Das Leben des Brian", "Fluch der Karibik", "Ice Age", "Findet Nemo", "Fight Club", "Road Trip",
"American History X", "Roter Drache", "Stigmata");

echo $DVD[6];
?>
Hier wurde auf den Eintrag mit dem Index 6 zugegriffen, und dieser per echo ausgegeben.

In diesen Eckigen Klammern können natürlich auch Variablen stehen.
Das Folgende Script bekommt vom Formular gesagt, welcher Eintrag angezeigt werden soll:
gesetzt in $_POST 'absenden'
<?php
$DVD = array("Ocean's Eleven", "Herr der Ringe - Die zwei Türme", "Herr der Ringe - Die Gefährten",
"Das Leben des Brian", "Fluch der Karibik", "Ice Age", "Findet Nemo", "Fight Club", "Road Trip",
"American History X", "Roter Drache", "Stigmata");

echo $DVD[$_POST[show]];
?>
Zeige
FormularQuelltext anzeigen
<html>
     <form method="post" action="/script.php">
          Zeige
          <select name="show" size="1">
               <option value="0">Index 0</option>
               <option value="1">Index 1</option>
               <option value="2">Index 2</option>
               <option value="3">Index 3</option>
               <option value="4">Index 4</option>
               <option value="5">Index 5</option>
               <option value="6">Index 6</option>
               <option value="7">Index 7</option>
               <option value="8">Index 8</option>
               <option value="9">Index 9</option>
               <option value="10">Index 10</option>
               <option value="11">Index 11</option>
          </select>
          <br />
          <input type="submit" name="absenden" value="Script starten">
     </form>
</html>
Vielleicht ist dir schon aufgefallen, dass diese 12 Einträge von 0 bis 11 durchnummeriert sind.
Das ist immer so, wenn man die Indizes nicht per Hand setzt - es folgt gleich, wie das geht.
© 2004-2005 - Impressum