Laravel 5 - 不断重复使用语句

Laravel 5 - constantly repeating use statements

是否有一个中心位置可以放置 'use' 语句,这样我就不必对我创建的每个控制器都做这样的事情?

<?php namespace App/Http/Controllers

use Session;
use Auth;
use Input;
use Log;
use Carbon;
use Response;
use Illuminate\Routing\Controller;

class BlaBlaController extends Controller {}

似乎违反了 DRYness 并且效率低下。

简答:否

'use' 语句正在解析该文件的名称空间,因此您不能从其他文件继承它们。它不违反 DRY,因为实际上没有任何逻辑被重复。

现在,如果您不想在每个控制器中都包含这些 use 语句,那么您可以在每次使用时将外观解析到全局范围之外。例如,以下内容适用于任何命名空间,无需 use 语句。

\Input::all();

在我看来,只包含 use 语句看起来更简洁一些,但两者都可以。