我想在我的Yii 1.1.14項目中使用接口和依賴注入。下面是我的演示代碼:在Yii控制器中使用接口和DI
接口:
interface IUserInterface
{
public function DoSomething();
}
類:
class UserService implements IUserInterface
{
public function DoSomething()
{
echo "TEST TEST";
}
}
既然說到這對我來說是有問題的部分。如何在我的控制器中注入接口?
我已經試過這樣:
class AccountController extends Controller
{
protected $userService;
public function __construct(IUserInterface $userInterface)
{
$this->userService = $userInterface;
parent::__construct();
}
public function actionTest()
{
$this->userService->DoSomething();
}
}
但是這不會起作用,因爲CController構造:
public void __construct(string $id, CWebModule $module=NULL)
我應該怎麼做,這樣我就可以使用該接口在我的控制器?
我問在Yii的論壇同樣的問題,但我們最終兜兜:http://www.yiiframework.com/forum/index.php/topic/52810-using-interfaces-and-di-in-yii-controllers/
Yii中最好是創建UserService作爲ApplicationComponent到處都使用這樣的Yii ::應用程序() - > userService沒有DI –
現在,它可以輕鬆完成在Yii 2.檢查此:http://stackoverflow.com/questions/28753235/how-to-use-dependency-injection-on-yii2 – sudip