【发布时间】:2014-08-06 01:19:14
【问题描述】:
PHP 允许使用静态成员函数和变量,因为 5.3 包括后期静态绑定:
class StaticClass {
public static $staticVar;
...
}
$o = new StaticClass();
目前,访问这些静态成员有多种选择:
$o->staticVar; // as instance variable/ function
$o::staticVar; // as class variable/ function
还有其他选项可用于从类内部访问成员:
self::$staticVar; // explicitly showing static usage of variable/ function
static::$staticVar; // allowing late static binding
重构一些使用静态成员的现有类我问自己是否有在 PHP 中使用静态成员的最佳实践?
【问题讨论】:
-
不要使用
$o->staticVar;访问静态属性,因为这几天会发出警告;在课堂外使用StaticClass::staticVar;