I am trying to access a static class member variable in an array.
My Code (index.php):
<?php
class Foo
{
public static $staticVar = 'test';
}
class Bar
{
public $someArray = array(
Foo::$staticVar
);
}
$cls = new Bar();
var_dump($cls->someArray);
?>
On PHP-7.0 I get this error:
PHP Fatal error: Constant expression contains invalid operations in /var/www/html/index.php on line 12
On PHP-5.6 I get this error:
PHP Parse error: syntax error, unexpected '$staticVar' (T_VARIABLE), expecting identifier (T_STRING) or class (T_CLASS) in /var/www/html/index.php on line 11
I just want to have the string "test" in my array.
It´s strange that when I 'echo' out the variable it works as expected:
echo Foo::$staticVar // prints 'test'
I´m new to PHP and I can´t figure out what I´m doing wrong.