Supportnet Computer
Planet of Tech

Supportnet / Forum / Skripte(PHP,ASP,Perl...)

Nachhilfe ;-)





Frage

Hi, ich hab gerade begonne, mir PHP reinzuziehen und versuche nun ein Übungsbeispiel zu lösen, komme aber nicht weiter :-): Die Vorgabe lautet: "Erstellen Sie ein Array $wochentag, das alle Tage der Woche beinhaltet und geben Sie diese anschließend in einer Schleife aus" Mein Code sieht so aus: <?php $wochentag = array("Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag","Sonntag"); for ($wochentag=0 ; $wochentag<7 ; $wochentag++) { echo $wochentag; } ?> Bei der Ausgabe im Browser stehen dann aber nicht die Wochentage sondern die Ziffern 0-6, warum werden hier nicht die Wochntage angezeit sondern die Indexzahlen? Vielen Dank im Voraus lg PeterK

Antwort 1 von PeterK

haaaa!
hab die foreach-Schleife gefunden, jetzt funktionierts :-)
lg PeterK

Antwort 2 von disco

moin

hast zwar schon ne andere lösung gefunden, aber dein fehler lag daran, dass nicht das array augegeben hast, sondern den zähler "$wochentag". ausserdem überscheibst du das array $wochentag mit der zahl 0 indem du sagst:

for ($wochentag=0 ; $wochentag<7 ; $wochentag++)

somit hat das array sowieso nicht mehr existiert.

dein code hätte so aussehen müssen:

<?php
$wochentag = array("Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag","Sonntag");
for ($i=0 ; $i<7 ; $i++)
{
echo $wochentag[$i];
}
?>

g,
disco

Antwort 3 von PeterK

@disco
aha, soso,
es funktioniert also doch auch mit der for-Schleife.
...und das i steht für das array?
...ist das immer so?
und wenn ich schreibe:
echo $wochentag[$i]<br>;
habe ich dann den Zeilenumbruch nach den Wochentagen?

ich glaub meine foreach-Schleife stimmt ja auch nicht ganz, oder? Wieso muss ich hier =>$wochentage schreiben?

foreach ($wochentag as $alle => $wochentage)
{
echo $wochentage , " <br>";
}

vielen Dank für deine Unterstützung
lg PeterK

Antwort 4 von disco

das $i ist der zähler der scheife. er fängt bei 0 an und endet bei 6. den brauchste um die positionen 0 bis 6 in deinem array anzusprechen.
$wochentag[0] entspricht montag
$wochentag[1] entspricht dienstag
usw.
in jedem durchlauf wird die zahl um $i um eins erhöht.

mit $wochentag[$i] spricht du also das array $wochentag an der position $i an, um an den inhalt zu kommen.

foreach benutz ich leider nicht, weil ich von java komme. aber soweit ich weiss müsste das so aussehen:

foreach ($wochentag as $alle)
{
echo $alle;
}
das array $wochentag wird bis zur letzten position durchlaufen und der inhalt der jeweiligen position in die variable $alle gepackt, so dass du sie im schleifenkörper verarbeiten kannst.

g,
disco

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: