0

我有以下一段代码,它不起作用:

<?php
class test{
    public static $var = 'foo';
    public static function printvar(){
        echo "Var value is {self::$var}";
    }
}
test::printvar();
?>

但是,这有效:

<?php
class test{
    public static $var = 'foo';
    public static function printvar(){
        echo "Var value is " . self::$var;
    }
}
test::printvar();
?>

问题是,无论如何我可以从静态方法内部访问引号内的静态变量吗?

4

1 回答 1

3

手动:

{$} 中的函数、方法调用、静态类变量和类常量从 PHP 5 开始工作。但是,访问的值将被解释为定义字符串的范围内的变量名。使用单个花括号 ({}) 无法访问函数或方法的返回值或类常量或静态类变量的值

阅读更多字符串...

于 2012-05-25T07:24:10.490 回答