我将lumen中的存储库模式与查询生成器一起使用。存储库类通常如下所示:
<?php
namespace AppRepositories;
use IlluminateSupportFacadesDB;
class RepoNameRepository {
public function methodName() {
/*
Various Calls to the DB facade...
$data = DB::table("tableName")...->get();
*/
return $data;
}
}
有没有有效的方法来摆脱使用语句在我的每个存储库类的开头使用 Illuminate\Support\Facades\DB?理想情况下,数据库外观将按 Web .php中的原样提供。
到目前为止,我能想到的是拥有一个带有 use 语句的存储库基类。
不,这就是 PHP 的工作方式。
您的替代方法是使用别名:
use DB;
或者使用反斜杠为调用添加前缀,使其在根命名空间中查找。
DB::table('users');
可以将app()
帮助程序函数与'db'
服务容器绑定键一起使用:
$data = app('db')->table('tableName')...->get();
它不需要任何use
语句。