PHP5.2相当于后期静态绑定(新静态)?
我正在尝试使为PHP5.3构建的脚本在PHP5.2服务器上工作。该脚本使用了大量后期静态绑定,如:PHP5.2相当于后期静态绑定(新静态)?,php,late-static-binding,Php,Late Static Binding,我正在尝试使为PHP5.3构建的脚本在PHP5.2服务器上工作。该脚本使用了大量后期静态绑定,如: return new static($options); 在PHP5.2中与此等效的是什么?不知怎的,它会是新的自我吗?还是不可能达到同样的效果 谢谢 编辑: 这是一个相关的问题 Juts试图把我的脑袋绕到这个最新的静态绑定东西上…我认为唯一的方法是通过一个受保护的静态方法来构建您的单例,以及一个定义要使用的类的公共静态方法。 您可以通过在$this上使用函数来“模拟”它 class Paren
return new static($options);
在PHP5.2中与此等效的是什么?不知怎的,它会是新的自我吗?还是不可能达到同样的效果
谢谢
编辑:
这是一个相关的问题
Juts试图把我的脑袋绕到这个最新的静态绑定东西上…我认为唯一的方法是通过一个受保护的静态方法来构建您的单例,以及一个定义要使用的类的公共静态方法。 您可以通过在$this上使用函数来“模拟”它
class ParentClass{
protected static function getInstance2($className){
//some stuffs here
return new $className();
}
public static function getInstance(){
return self::getInstance2(get_class(self));
}
}
class ChildClass extends ParentClass{
public static function getInstance(){
return self::getInstance2(get_class(self));
}
}
恐怕没有等价物,晚静态绑定只是在PHP5.3中引入的。这看起来像singletonitis:XLike@Robin说,没有等价物。也许get_class()可以帮助您获得类似的结果?