Warum ist das so in Php siehe Bild (arrays)?

... komplette Frage anzeigen

6 Antworten

Mit der ersten Zeile wird aus $tp ein Array.

$tp = array (...)

Das ist wie ein Schrank mit vielen Schubladen, in die du unterschiedliche Werte packen kannst. 5 Schubladen hast du mit den 5 Werten in der Klammer bereits angelegt.

Willst du diese einzeln auslesen oder ändern, rufst du diese mit $tp[0] bis $tp[4] auf.

In den nächsten beiden Zeilen erstellst du nun noch zwei weitere Einträge tp[5] und tp[6].

Als nächstes startest du eine Schleife in der du der Variablen $i nacheinander die Werte von 0 bis 6 übergibst.

Diese Werte $i werden nun in deiner Anweisung in der Schleife entsprechend für $1 eingetragen. Also werden nun nacheinander folgende Anweisungen ausgeführt:

echo "Temperatur: 0: $tp[0] <br>";
echo "Temperatur: 1: $tp[1] <br>";
echo "Temperatur: 2: $tp[2] <br>";
echo "Temperatur: 3: $tp[3] <br>";
echo "Temperatur: 4: $tp[4] <br>";
echo "Temperatur: 5: $tp[5] <br>";
echo "Temperatur: 6: $tp[6] <br>";


und dadurch natürlich die Werte aus dem Array nacheinander ausgelesen. Da du die Variablen innerhalb der doppelten Anführungszeichen stehen hast, werden für diese die Werte ausgegeben. Hättest du Hochkommas verwendet, hätte diese Ausgabe nicht funktioniert.

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von xBlackMass
21.02.2017, 07:13

achso also in den index muss $i hin weil die schleife noch 6 mal die varbiable bzw den array $tp durchlaufen muss um dann eben die einzelnen werte rauszukriegen oder? Habe ich das richtig verstanden?

0

Naja tp ist eine Variable und i ist eine Variable, weil Variablen in PHP immer den Präfix $ tragen müssen ergibt sich der i-te Index aus tp zu $tp[$i].

Würdest du nur $tp[i] schreiben, wäre das zum einen mal eine Warnung und zum anderen wird i indiesem Fall als String gewertet und nicht als die Variable i, weswegen der Effekt gleich wäre zu $tp["i"].

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von xBlackMass
21.02.2017, 07:14

achso also in den index muss $i hin weil die schleife noch 6 mal die varbiable bzw den array $tp durchlaufen muss um dann eben die einzelnen werte rauszukriegen oder? Habe ich das richtig verstanden?

0

$tp ist ein array - also quasi sowas wie ein regal. jedes fach in diesem regal hat einen wert und eine index-nummer. index-nummern fangen in der regel bei 0 an.

in dem beispiel haste also im index 3 den wert 18.

zuerst legt er den array fest und gibt die 4 werte ein. dann gibt er an die stelle 5 und 6 2 weitere werte.

danach durchläuft er eine schleife mit zähler. in der schleife wird erst der index ($i) auf 0 gesetzt und dann bei jedem durchlauf um 1 erhöht ($i++). die schleife läuft solange durch, solange $i < oder = 6 ist. 6 weil 6 indexwerte (man könnte auch mit count($) arbeiten).

in der schleife gibt er dann die werte aus. in $i steht z.b. der index-wert 0, also wird aus dem array 15 ausgegeben.

soweit verständlich?

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von xBlackMass
21.02.2017, 07:14

achso also in den index muss $i hin weil die schleife noch 6 mal die varbiable bzw den array $tp durchlaufen muss um dann eben die einzelnen werte rauszukriegen oder? Habe ich das richtig verstanden?

0

Sowohl $i als auch $tp sind variablen, Letzteres ein Array.

Auf das Array $tp wird über einen Laufindex $i zugegriffen mit $tp[$i].

Bin mir gerade nicht sicher. Wenn das innerhalb der Zeichenkette nicht funktioniert, schreibe besser {$tp[$i]} oder "..." . $tp[$i] . "..."

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von xBlackMass
21.02.2017, 07:14

achso also in den index muss $i hin weil die schleife noch 6 mal die varbiable bzw den array $tp durchlaufen muss um dann eben die einzelnen werte rauszukriegen oder? Habe ich das richtig verstanden?

0

Weil tp nen array ist und i die runde aus der for

Antwort bewerten Vielen Dank für Deine Bewertung

Du willst ein Element eines Arrays ausgeben.

Das Array wird mit $tp angesprochen, also z. B. das 2. Element wäre

$tp[2]

Jetzt willst Du aber nicht das 2. sondern das i-te Element.

Die Variable i wird mit $i angesprochen, also zusammen: $tp[$i]

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von xBlackMass
21.02.2017, 07:15

achso also in den index muss $i hin weil die schleife noch 6 mal die varbiable bzw den array $tp durchlaufen muss um dann eben die einzelnen werte rauszukriegen oder? Habe ich das richtig verstanden?

0

Was möchtest Du wissen?