Mailinglisten-Archive |
Jörg Krause wrote: > > > From: php-admin_(at)_php-center.de [mailto:php-admin_(at)_php-center.de]On Behalf > > Of Ulf Wendel > > Sent: Monday, December 11, 2000 11:01 PM > > 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? > > > Das hat nichts mit dem o.g. Statement zu tun, auch ein alleinstehendes > > &$var; > > erzeugt den Parserfehler, während Oh, ja und das ist auch verständlich. > $var; > > ok ist. Da prüft der Parser die Gültigkeit der Syntax und Zugriffe > auf Referenzen offensichtlich anders als normale Variablen, > was sicher nachvollziehbar ist. Ich hatte den Effekt auch mit > if...else (4.0.1pl2). > Um das zu umgehen, muss man den Ausdruck gültig machen, z.B. > > $dummy = &$foo; Schade. Kann das dem Parser nicht beigebracht werden? Sofern das Ergebnis des Statements einer anderen Variable zugewiesen wird, so möge er nicht meckern. Stets etwas anderes als eine Zuweisung (z.B. ein print) vor dem bedingten Ausdruck stets, sollte auch weiterhin der Fehler erscheinen. Ulf
php::bar PHP Wiki - Listenarchive