Re: self operator within a double quoted string
| From: | Matijn Woudt | Date: | Wed, 17 Apr 2013 18:59:06 +0000 |
| Subject: | Re: self operator within a double quoted string | ||
| References: | 1 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-320863@lists.php.net to get a copy of this message | ||
On Wed, Apr 17, 2013 at 7:47 PM, NaMarPi <namarpi@yahoo.com> 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