Re: String BC break \{$a}
| From: | Tomas Kuliavas | Date: | Fri, 23 Mar 2007 06:29:01 +0000 |
| Subject: | Re: String BC break \{$a} | ||
| References: | 1 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-28567@lists.php.net to get a copy of this message | ||
> Hi there,
> looking around quickly I couldn't find any documentation on the
> following change:
> $a = "foo"; echo "\{$a}";
>
> PHP 4.4.4: {foo}
> PHP 5.2.1: \{foo}
>
> I didn't check which exact version introduced this change. Some
> third-party code used this obscure construct and failed when migrating
> from PHP 4 to PHP 5.
>
> Was this intentional and if yes, should it be documented in
> http://www.php.net/manual/en/migration5.incompatible.php ?
>
> If this has been discussed before then I apologize.
It was changed in 5.1.0-5.1.1 versions.
According to PHP Manual (http://www.php.net/language.types.string) curly
brackets are not escaped with backslash. Escape worked in older PHP
versions. It does not work in 5.1.1+.
http://bugs.php.net/31341
http://bugs.php.net/35411