1 개요[ | ]
- 라라벨 Controller.php
2 App\Http[ | ]
PHP
Copy
<?php
namespace App\Http\Controllers;
use Illuminate\Foundation\Bus\DispatchesJobs;
use Illuminate\Routing\Controller as BaseController;
use Illuminate\Foundation\Validation\ValidatesRequests;
use Illuminate\Foundation\Auth\Access\AuthorizesRequests;
class Controller extends BaseController
{
use AuthorizesRequests, DispatchesJobs, ValidatesRequests;
}
3 Illuminate\Routing[ | ]
- BaseController
- 추상 클래스
PHP
Copy
<?php
namespace Illuminate\Routing;
use BadMethodCallException;
use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
abstract class Controller
{
protected $middleware = [];
protected static $router;
public function middleware($middleware, array $options = [])
{
foreach ((array) $middleware as $middlewareName) {
$this->middleware[$middlewareName] = &$options;
}
return new ControllerMiddlewareOptions($options);
}
public function getMiddleware()
{
return $this->middleware;
}
public static function getRouter()
{
return static::$router;
}
public static function setRouter(Router $router)
{
static::$router = $router;
}
public function callAction($method, $parameters)
{
return call_user_func_array([$this, $method], $parameters);
}
public function missingMethod($parameters = [])
{
throw new NotFoundHttpException('Controller method not found.');
}
public function __call($method, $parameters)
{
throw new BadMethodCallException("Method [$method] does not exist.");
}
}