考虑这个示例单例类:
class Model_Acl
{
protected static $_instance;
private function __construct($a) {
echo $a;
}
public static function getInstance()
{
if(!isset(self::$_instance)) {
self::$_instance = new Model_Acl('hello world');
}
return self::$_instance;
}
}
在同一类的静态方法中,我能够初始化构造函数私有的类。这是否意味着在尝试实例化类中的对象时,类初始化的范围变为本地?
如果有人可以参考访问修饰符来解释类实例化时 PHP 的行为,我将不胜感激。