怎么让依赖注入共享对象实例

webgggo

问题描述

测试了下,如果多个类依赖同一个类,那么每次都会重新创建新的对象,有无办法让Config第一次被创建之后就复用,不再新建。

<?php
class Config
{
    public $text = '';
}
?>

<?php
class ModelA {
    public function __construct(Config $config){
        $config->text = 'hello';
    }
}
?>

<?php
class ModelB {
    public function __construct(Config $config){
        echo $config->text; // 输出空字符,说明Config是一个新的实例
    }
}
?>

<?php
class Test {
    public function __construct(
        ModelA $modelA,
        ModelB $modelB
    ) {}
}
?>
110 1 0
1个回答

nitron
  • 暂无评论
×
🔝