Controller
abstract class Controller (View source)
Constants
FACTORY |
Nama event untuk controller factory rakit. |
Properties
string | $layout | Berisi layout yang sedang digunakan oleh controller. |
|
string | $package | Berisi nama paket pemilik controller. |
|
bool | $restful | Indikasi bahwa controller menggunakan RESTful routing. |
|
protected array | $middlewares | Berisi list middleware yang dilampirkan ke controller ini. |
Methods
Buat instance Controller baru.
Deteksi seluruh controller milik paket yang diberikan.
Panggil sebuah method action milik controller.
Ganti seluruh back-reference milik rute.
Resolve nama paket dan nama controller menjadi instance kelas controller.
Muat file controller.
Format identifier paket dan controller menjadi nama kelas controller.
Eksekusi method controller dengan parameter yang diberikan.
Eksekusi action controller dan return responnya.
Lampirkan middleware ke controller.
Ambil list nama middleware yang dilampirkan ke method.
Method ini akan terpanggil sebelum setiap request ke controller ini dieksekusi.
Handle request yang tidak cocok dengan definsi rute yang ada.
Resolve item dari Container secara dinamis.
Details
__construct()
Buat instance Controller baru.
static array
detect(string $package = DEFAULT_PACKAGE, string $directory = null)
Deteksi seluruh controller milik paket yang diberikan.
static Response
call(string $destination, array $parameters = [])
Panggil sebuah method action milik controller.
// Panggil method User_Controller::show()
$response = Controller::call('user@show');
// Panggil method User_Admin_Controller::profile() dan oper parameter
$response = Controller::call('user.admin@profile', [$name]);
static protected array
references(string $destination, array $parameters)
Ganti seluruh back-reference milik rute.
static Controller
resolve(string $package, string $controller)
Resolve nama paket dan nama controller menjadi instance kelas controller.
static protected bool
load(string $package, string $controller)
Muat file controller.
static protected string
format(string $package, string $controller)
Format identifier paket dan controller menjadi nama kelas controller.
Response
execute(string $method, array $parameters = [])
Eksekusi method controller dengan parameter yang diberikan.
mixed
response(string $method, array $parameters = [])
Eksekusi action controller dan return responnya.
Berbeda dengan method execute(), tidak akan ada middleware yang akan dijalankan dan respon dari action controllertidak akan diubah sebelum ia direturn.
protected middlewareator
middleware(string $event, string|array $middlewares, mixed $parameters = null)
Lampirkan middleware ke controller.
// Set sebuah middleware after 'foo' untuk seluruh method di controller
$this->middleware('before', 'foo');
// Set middleware after 'foo' dan 'bar' hanya untuk bebrapa method saja
$this->middleware('after', 'foo|bar')->only(['user', 'profile']);
protected array
middlewares(string $event, string $method)
Ambil list nama middleware yang dilampirkan ke method.
View
layout()
Definisikan view layout untuk controller saat ini.
Redirect|null
validate(array $rules)
Validasi input.
before()
Method ini akan terpanggil sebelum setiap request ke controller ini dieksekusi.
after(Response $response)
Method ini akan terpanggil sebelum setiap request ke controller ini dieksekusi.
Response
__call(string $method, array $parameters)
Handle request yang tidak cocok dengan definsi rute yang ada.
mixed
__get($key)
Resolve item dari Container secara dinamis.