是否可以在 PHP 中将类的实例声明为属性?
基本上我想要实现的是:
abstract class ClassA()
{
static $property = new ClassB();
}
好吧,我知道我不能这样做,但是除了总是做这样的事情之外还有什么解决方法吗:
if (!isset(ClassA::$property)) ClassA::$property = new ClassB();
您可以使用类似单例的实现:
<?php
class ClassA {
private static $instance;
public static function getInstance() {
if (!isset(self::$instance)) {
self::$instance = new ClassB();
}
return self::$instance;
}
}
?>
然后你可以通过以下方式引用该实例:
ClassA::getInstance()->someClassBMethod();
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)