Mailinglisten-Archive |
Hello André,
Tuesday, March 14, 2000, 1:01:56 AM, you wrote:
AL> [...]Mir ist nicht ganz klar, wie die Abbruchbedinnung zustande kommt!
AL> Wenn 50 $key und 50 $var existieren? = ist ja auch kein Vergleich,
AL> sondern eine "Zuweisung", oder sehe ich was falsch?
Es ist beides!
AL> while ( list($key, $val) = each($HTTP_POST_VARS) )
AL> {
AL> echo "$key: $vars \n<br>"
AL> }
Schau Dir doch einfach mal die Doku für die verwendeten Anweisungen
an, z.B. http://www.php-center.de/de-html-manual/function.each.html
Die Abbruchbedingung kommt dadurch zustande, daß der interne
Array"pointer", der für jeden Schritt der Schleife ein Element weiter
gesetzt wird, irgendwann ins Nirvana weist - weil das letzte Element
des Array erreicht ist.
Die Zuweisung ist eigentlich nur Crypto-C, eine Zuweisung, die
gleichzeitig einen boolschen Ausdruck annimmt. Die Zuweisung ist
nämlich solange TRUE, solange sie funktioniert - d.h. solange es auch
noch ein gültiges Arrayelement gibt, das EACH erreichen kann (s.o.).
Sauberer könnte es auch so heißen:
while ( (list($key, $val)=each($HTTP_POST_VARS))==true )
{
echo "$key: $vars \n<br>"
}
oder noch sauberer:
while ( each($HTTP_POST_VARS) )
{
list($key,$val)=current($HTTP_POST_VARS);
echo "$key: $vars \n<br>"
}
Aber wenn man's weiß, spart man sich natürlich die Schreibarbeit...
Unser Prog.-Prof würde Dich dann mit abfälligem Unterton "real
Programmer" nennen :)
--
Best regards,
Stefan mailto:schwardt_(at)_euro-auto-boerse.net
php::bar PHP Wiki - Listenarchive