簡體   English   中英

使用Slim的依賴容器的合適方式

[英]Propery way to use Slim's dependency container

根據http://www.slimframework.com/docs/tutorial/first-app.html ,首先創建slim對象,然后獲取容器並添加服務。

$app = new \Slim\App(["settings" => $config]);
$container = $app->getContainer();
$container['logger'] = function($c) {
    ...
    return $logger;
};

但是,具體關於依賴容器的http://www.slimframework.com/docs/concepts/di.html更強大並指出:

您不必提供依賴性容器。 但是,如果這樣做,則必須將容器實例注入Slim應用程序的構造函數中。

$container = new \\Slim\\Container; $app = new \\Slim\\App($container);

一種方式比另一種更合適嗎?

使用第二種方法時如何添加服務?

一種方式比另一種更合適嗎?

有一些相同,所以在我看來沒有正確的方法,但我正在做第二種方法,因為這樣你可以在創建實際的苗條應用程序實例之前添加記錄器和其他東西。

使用第二種方法時如何添加服務?

與使用第一種方法相同

$container = new \Slim\Container;
$container['logger'] = function($c) {
    ...
    return $logger;
};

$app = new \Slim\App($container);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM