给定PHP中类的字符串名称,如何访问其中一个静态变量?
我想做的是:
$className = 'SomeClass'; // assume string was actually handed in as a parameter
$foo = $className::$someStaticVar;
Run Code Online (Sandbox Code Playgroud)
...但PHP给了我一个可爱的"解析错误:语法错误,意外的T_PAAMAYIM_NEKUDOTAYIM",这显然是双冒号(::)的希伯来名字.
更新:不幸的是,我必须使用PHP 5.2.X.
更新2:正如MrXexxed猜测的那样,静态变量是从父类继承的.
为什么即使将其范围设置为私有,也可以print_r看到私有属性$ version?
class myClass {
private $version;
public function set_version($value){
$this->version = $value;
}
}
$class = new myClass();
$class->set_version("1.2");
echo "<pre>";
print_r($class);
Run Code Online (Sandbox Code Playgroud)