PHP静态类问题

时间:2010-11-01 16:38:54

标签: php class static

<?php

class jokz {
    static public $val='123';
    static public function xxx() {
        jokz2(self);
    }
}

function jokz2($obj) {
    echo $obj::$val;
}

jokz::xxx();
?>

它返回致命错误,导致无法找到类“self”... 所以......我怎么能做到这一点?

在函数中通过引用传递参数也不起作用

function jokz2(&$obj) {
    echo $obj::$val;
}

2 个答案:

答案 0 :(得分:0)

您必须使用$this来使用当前对象。

答案 1 :(得分:0)

没有要传递的对象self指的是静态类)。您可以传递类的名称并以此方式调用它(使用call_user_func)或实例化对象并传递$this