Der Komma-Operator
Viennamade
- php
Hallo liebe Forumsteilnehmer!
Eben las ich die Tabelle "Operatoren-Rangfolge" http://at.php.net/manual/de/language.operators.php#language.operators.precedence durch.
Der letzte Operator, ein Komma, was kann der denn? Ich bin dann die einzelnen Operatoren-Arten durchgegangen (ganz oben auf der verlinkten Seite ist ein Inhaltsverzeichnis), habe aber keine Erklärung gefunden.
Danke
Viennamade
Hallo Viennamade,
Der letzte Operator, ein Komma, was kann der denn?
Ich glaube damit ist das Komma, das zum Trennen von Funktionsparametern verwendet wird, gemeint. Wenn man also schreibt:
func ($a + $b, $c - $d)
dann heißt das func (($a + $b), ($c - $d)) und eben nicht func ($a + ($b, $c) - $d) - was IMHO unsinnig wäre.
Warum dieses Komma unter Operatoren aufgeführt wird, ist mir allerdings unklar, es führt ja keine Operation aus, sondern dient lediglich der syntaktischen Trennung von Parametern.
Viele Grüße,
Christian
Hallo Christian, hallo Viennamade,
Warum dieses Komma unter Operatoren aufgeführt wird, ist mir allerdings unklar, es führt ja keine Operation aus, sondern dient lediglich der syntaktischen Trennung von Parametern.
Naja, in wie fern ein dort aufgelistetes Zeichen operiert oder nicht, könnte immer in bestimmter Hinsicht hinterfragt werden.
WauWau
hi,
Naja, in wie fern ein dort aufgelistetes Zeichen operiert oder nicht, könnte immer in bestimmter Hinsicht hinterfragt werden.
schon mal über eine karriere als politiker nachgedacht?
gruss,
wahsaga
Hallo wahsaga,
Naja, in wie fern ein dort aufgelistetes Zeichen operiert oder nicht, könnte immer in bestimmter Hinsicht hinterfragt werden.
schon mal über eine karriere als politiker nachgedacht?
Ach nö... eigentlich nicht ;-)
WauWau
Hi,
Ich glaube damit ist das Komma, das zum Trennen von Funktionsparametern verwendet wird, gemeint.
[...]
damit hat der dort aufgeführte Komma-Operator IMHO nichts zu tun. Dieser kann zur Trennung von Ausdrücken verwendet werden, die dann nacheinander (von links nach rechts) ausgeführt werden. Der einzig sinnvolle Einsatzzweck, den ich kenne, liegt in for-Schleifen, in denen man mehr als einen Index benötigt, z.B.:
for ($i = 0, $j = 10; $i < $j; $i++, $j--) {
// ...
}
ist das Gleiche wie (aber je nach Geschmack übersichtlicher als):
$j = 10;
for ($i = 0; $i < $j; $i++) {
// ...
$j++;
}
Gruß,
Andreas.
Hallo!
Dieser kann zur Trennung von Ausdrücken verwendet werden, die dann nacheinander (von links nach rechts) ausgeführt werden. Der einzig sinnvolle Einsatzzweck, den ich kenne, liegt in for-Schleifen, in denen man mehr als einen Index benötigt, z.B.:
for ($i = 0, $j = 10; $i < $j; $i++, $j--) {
// ...
}
Na gut, auch eine Möglichkeit fünf mal wo vorbei zu kommen.
Aber wer fragt ist selber schuld :-)
Danke für alle Beiträge!
Viennamade
Hi,
Der letzte Operator, ein Komma, was kann der denn?
Ich glaube damit ist das Komma, das zum Trennen von Funktionsparametern verwendet wird, gemeint.
Nein.
Der Komma-Operator oder auch Sequence-Operator hat eine andere Bedeutung.
Die Operanden werden der Reihe nach von links nach rechts ausgewertet.
Ergebnis des Komma-Operators ist das Ergebnis des letzten Ausdrucks.
cu,
Andreas