Illuminate\Routing\Controller 或 App\Http\Controllers\Controller
Illuminate\Routing\Controller or App\Http\Controllers\Controller
我是 PHP 的新手,使用 PhpStorm。我有一个疑问,这就是使用
的区别
Illuminate\Routing\Controller
和
App\Http\Controllers\Controller
我想传递 API 但每当我必须决定控制器 class 导入的路由时,我怀疑其中的区别。
谁能给我解释一下?
Illuminate\Routing\Controller
是框架中的控制器class。 App\Http\Controllers\Controller
是您项目中扩展框架控制器的那个。如果您的控制器具有覆盖方法或一些您希望它们可用于其他扩展控制器的基本方法,例如;
namespace App\Http\Controllers;
use App\Traits\DateTime\DateTime;
use App\Traits\Partner\PartnerDetail;
use App\Traits\Redirect\RedirectRoute;
use Illuminate\Foundation\Bus\DispatchesJobs;
use Illuminate\Routing\Controller as BaseController; // this is in the framework
use Illuminate\Foundation\Validation\ValidatesRequests;
use Illuminate\Foundation\Auth\Access\AuthorizesRequests;
class Controller extends BaseController
{
// Laravel Traits
use AuthorizesRequests, DispatchesJobs, ValidatesRequests;
// Project Traits
use RedirectRoute, DateTime, PartnerDetail;
public function someCommonMethod()
{
//
}
}
<?php
namespace App\Http\Controllers;
class DashboardController extends Controller
{
public function index()
{
$this->someCommonMethod();
}
}
如果你的App\Http\Controllers\Controller
没有什么特别的,那么你可以选择Illuminate\Routing\Controller
我是 PHP 的新手,使用 PhpStorm。我有一个疑问,这就是使用
的区别Illuminate\Routing\Controller
和
App\Http\Controllers\Controller
我想传递 API 但每当我必须决定控制器 class 导入的路由时,我怀疑其中的区别。
谁能给我解释一下?
Illuminate\Routing\Controller
是框架中的控制器class。 App\Http\Controllers\Controller
是您项目中扩展框架控制器的那个。如果您的控制器具有覆盖方法或一些您希望它们可用于其他扩展控制器的基本方法,例如;
namespace App\Http\Controllers;
use App\Traits\DateTime\DateTime;
use App\Traits\Partner\PartnerDetail;
use App\Traits\Redirect\RedirectRoute;
use Illuminate\Foundation\Bus\DispatchesJobs;
use Illuminate\Routing\Controller as BaseController; // this is in the framework
use Illuminate\Foundation\Validation\ValidatesRequests;
use Illuminate\Foundation\Auth\Access\AuthorizesRequests;
class Controller extends BaseController
{
// Laravel Traits
use AuthorizesRequests, DispatchesJobs, ValidatesRequests;
// Project Traits
use RedirectRoute, DateTime, PartnerDetail;
public function someCommonMethod()
{
//
}
}
<?php
namespace App\Http\Controllers;
class DashboardController extends Controller
{
public function index()
{
$this->someCommonMethod();
}
}
如果你的App\Http\Controllers\Controller
没有什么特别的,那么你可以选择Illuminate\Routing\Controller