<?php
namespace app\api\controller\f;
use app\api\model\ModelStackBook;
class IndexDemo extends Demo
{
protected $ModelStackBook;
public function __construct()
{
parent::__construct();
$this->ModelStackBook = new ModelStackBook();
}
public function index()
{
$res = $this->ModelStackBook->find(1);
return api_success($res);
}
public function index1()
{
$res = $this->ModelStackBook->find(1);
return api_success($res);
}
}
<?php
namespace app\api\controller\f;
use app\api\model\ModelStackBook;
class IndexDemo extends Demo
{
public function index()
{
$ModelStackBook = new ModelStackBook();
$res = $ModelStackBook->find(1);
return api_success($res);
}
public function index1()
{
$ModelStackBook = new ModelStackBook();
$res = $ModelStackBook->find(1);
return api_success($res);
}
}
在项目中会用到 控制器 ModelStackBook 每次都去new 一遍, 还是直接使用构造函数。两者的差别在哪里?从代码量上看,如果多次调用的话 使用构造函数,代码更加简洁,易维护。其他深层次的方面,会有区别吗?
都不是很好,如果非要选的话,第一种相对要好点儿,因为如果你以后有变更的话,只用修改构造函数处就好了,但是如果你用了依赖注入容器的话,就可以先定义接口再实现,然后在容器上绑定类到接口,这样,你只需要修改容器绑定就好了,代码可以不用动。
当然,如果你觉得太麻烦,也可以直接不绑定 直接使用模型类型注入。