【发布时间】:2021-07-02 00:04:17
【问题描述】:
我有这个代码
trait GetCurrentConfigTrait
{
private static ?object $instance;
private ?array $currentConfig;
final public static function getCurrentConfig($name)
{
$class = __CLASS__;
self::$instance = self::$instance ?? new $class();
var_dump(self::$instance);
if(is_array(self::$instance->currentConfig)){ # <<< This line throws the error.
return self::$instance->currentConfig;
}
else{
//Load config
return self::$instance->currentConfig;
}
}
}
但是我收到错误$currentConfig must not be accessed before initialization。 var 转储向我展示了这一点:
object(My\Class)#1 (0) { ["currentConfig":"My\Class":private]=> uninitialized(?array) }
为什么我不能在这里使用我的实例?
【问题讨论】:
标签: php singleton instance traits