phpbar.de logo

Mailinglisten-Archive

[php] Warum nicht: $bar = (3 == $foo) ? &$foo : &$foo ?

[php] Warum nicht: $bar = (3 == $foo) ? &$foo : &$foo ?

eschmid+sic_(at)_s.netic.de eschmid+sic_(at)_s.netic.de
Mon, 11 Dec 2000 23:52:16 +0100


On Mon, Dec 11, 2000 at 11:33:33PM +0100, eschmid+sic_(at)_s.netic.de wrote:
> On Mon, Dec 11, 2000 at 11:21:38PM +0100, Ulf Wendel wrote:
> 
> > eschmid+sic_(at)_s.netic.de wrote:
> > > 
> > > On Mon, Dec 11, 2000 at 11:01:14PM +0100, Ulf Wendel wrote:
> > > 
> > > > warum muß ich statt $bar = (3 == $foo) ? &$foo : &$foo die Langform mit
> > > > if-else benutzen, um einem Parse Error auf meinem PHP 4.0.5 dev
> > > > auszuweichen?
> > > 
> > > Warum gibts Du zweimal das selbe aus. Auf diese Konstruktion kannst Du
> > > doch ganz verzichten. Wird auch nicht ganz in Saschas PHP-Lang passen.
> > 
> > Hallo Egon,
> > 
> > das Beispiel ist witzlos. Ich wundere mich über den Parse Error, des
> > Originals. Der bedingte Ausdruck scheint nicht im Zusammenhang mit
> > Referenzen erlaubt. Warum ist das so?
> > 
> > $data = ("GET" == $this->method) ? &$GLOBALS["HTTP_GET_VARS"] :
> > &$GLOBALS["HTTP_POST_VARS"]; 
> > Parse error: parse error in ....
> 
> Das weiß ich jetzt auch nicht und auf die Language Spec hab ich auch nur
> bedingt Zugriff. Zuhause ist meine Festplatte etwas klein geraten oder sie
> ist irgentwie zu voll.

Nachtrag: Vielleicht wird man aus dem PHP Manual schlau, es ist in Kapitel
9 "Expressions" versteckt. Weitere Hinweise über den richtigen Gebrauch
des "Ternary Conditional Operators" entnehme man den englischen
Listenarchiven zu PHP. Als Suchwort braucht man nur "grandmother"
einzugeben und dann sollte man das Quick Tutorial von Rasmus Lerdorf
finden. Vielleicht lässt dieses weiteres auf das Fehlverhalten er Ternary
Operators zu.

-Egon

-- 
http://www.linuxtag.de/
http://php.net/books.php 
http://www.concert-band.de/


php::bar PHP Wiki   -   Listenarchive