Thomas Luethi: Brett vor dem Kopf

Beitrag lesen

Hallo,

Ausnahme: Innerhalb von _doppelten_ Anfuehrungszeichen. "$foo[bar]" ist erlaubt:
http://www.php.net/manual/en/language.types.array.php#AEN3791
...also überall da, wo Konstanten nicht als solche interpretiert werden, darf man die Anführungszeichen und den Index weglassen *?!..*

"Duerfen" ist der falsche Ausdruck. Es ist und bleibt falsch, und "funktioniert"
nur dank der Fehlertoleranz von PHP. Diese koennte sich irgendwann mal aendern.

Noch zur Ergaenzung: Die Beispiele im englischen Manual sind ganz nuetzlich:
http://www.php.net/manual/en/language.types.string.php#AEN3553

Korrekt: echo "Blabla $foo[bar] Blabla";
Korrekt: echo "Blabla {$foo['bar']} Blabla";

Falsch: echo "Blabla $foo['bar'] Blabla";
  (gibt in neuen PHP-Versionen einen Parsing Error)
Falsch: echo "Blabla {$foo[bar]} Blabla";
  (das letzte Beispiel "funktioniert" aber dank obengenannter Toleranz)

Gruesse,

Thomas