0

我正在尝试在 Slim 3 容器中添加一个属性,但是当我 var dump 时它显示“注意:未定义的属性:Slim\App::$user”。我知道在 Slim 2 中它是:

$app->container->set('user',function(){
    return new User;
});

var_dump($app->user);

这将显示用户模型容器中的所有属性。但是我试图在 Slim 3 中实现这一点。

我查看了文档并找到了一个 add 函数,但它返回了一个未定义的属性。

这是我试过的代码:

$app->add('user',function(){
    return new User;
});
var_dump($app->user);

我知道 User 类确实存在,因为我已经测试过了。我被困在这一点上,我不确定向我的容器添加属性的方法是什么。

4

1 回答 1

1

当您在 DI 容器上注册它时,它不会自动将其添加为属性,您可以将其添加为属性:

$app->user = new User;

或与 DI

$app->user = $app->container->get('user');
于 2016-10-29T19:26:42.263 回答