Re: [PHP] self operator within a double quoted string

[email protected] (Matijn Woudt)
Newsgroups php.general
Message-ID <CAC_gtuNr0ty_Yve=OLcKSPgNtvuwhMv5mDVsxQ9rzGPAroB+Eg@mail.gmail.com>
On Wed, Apr 17, 2013 at 7:47 PM, NaMarPi <[email protected]> wrote:

> I would like to use self and static operators inside a double quoted
> string,
> but do not find the way to accomplish that. Could you give me a right
> direction?
>
>
> http://3v4l.org/NDkdA
>
>
> class Foo {
>
>     public static $class_prop = 'Class_Property';
>     public $object_prop = 'Object_Property';
>
>     static function printClassProp() {
>         print 'prefix_' . self::$class_prop . '_postfix' . PHP_EOL;
>         print "prefix_{\\self::$class_prop}_postfix" . PHP_EOL;       //
> <-- issue here
>     }
>
>     function printObjectProp() {
>         print "prefix_{$this->object_prop}_postfix" . PHP_EOL;
>     }
> }
>
>
> $foo = new Foo;
> $foo->printObjectProp();
>
>
> Foo::printClassProp();
>
>
Hi,

This is a bug/feature in php and is just not possible. Either use the
syntax you've used on the single quotes, or store the variable in a
temporary var before using the print.

- Matijn
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.