Route
in package
ルーティング情報。
Table of Contents
Constants
- CLEAR_MIDDLEWARE = '*'
- ミドルウェア指定時に以前をリセットする。
Properties
- $actions : array<string, Action>
- アクション一覧。
- $baseMiddleware : array<string|int, IMiddleware|IMiddleware>>
- ミドルウェア一覧。
- $basePath : string
- ベースパス。
- $baseShutdownMiddleware : array<string|int, IShutdownMiddleware|IShutdownMiddleware>>
- 終了ミドルウェア一覧。
- $className : ControllerBase>
- クラス完全名。
- $regex : Regex
Methods
- __construct() : mixed
- ルーティング情報にコントローラを登録
- addAction() : Route
- アクション設定。
- getAction() : RouteAction|null
- メソッド・リクエストパスから登録されているアクションを取得。
- getExcludeIndexPattern() : string
- コントローラに対してインデックスを付与しないパターン。
- combineMiddleware() : array<string|int, IMiddleware|IShutdownMiddleware|class-string>
- ミドルウェア組み合わせ。
- getActionCore() : RouteAction
- アクション取得内部実装。
Constants
CLEAR_MIDDLEWARE
ミドルウェア指定時に以前をリセットする。
public
mixed
CLEAR_MIDDLEWARE
= '*'
Properties
$actions
アクション一覧。
private
array<string, Action>
$actions
= []
$baseMiddleware
ミドルウェア一覧。
private
array<string|int, IMiddleware|IMiddleware>>
$baseMiddleware
$basePath read-only
ベースパス。
private
string
$basePath
$baseShutdownMiddleware
終了ミドルウェア一覧。
private
array<string|int, IShutdownMiddleware|IShutdownMiddleware>>
$baseShutdownMiddleware
$className read-only
クラス完全名。
private
ControllerBase>
$className
$regex
private
Regex
$regex
Methods
__construct()
ルーティング情報にコントローラを登録
public
__construct(string $path, ControllerBase> $className[, array<string|int, IMiddleware|IMiddleware>> $middleware = [] ][, array<string|int, IShutdownMiddleware|IShutdownMiddleware>> $shutdownMiddleware = [] ]) : mixed
Parameters
- $path : string
-
URLとしてのパス。$this->excludeIndexPattern に一致しない場合に index アクションが自動登録される
- $className : ControllerBase>
-
使用されるクラス完全名
- $middleware : array<string|int, IMiddleware|IMiddleware>> = []
-
ベースとなるミドルウェア。
- $shutdownMiddleware : array<string|int, IShutdownMiddleware|IShutdownMiddleware>> = []
-
ベースとなる終了ミドルウェア。
addAction()
アクション設定。
public
addAction(string $actionName, HttpMethod|array<string|int, HttpMethod> $httpMethod, string $methodName[, array<string|int, IMiddleware|string>|null $middleware = null ][, array<string|int, IShutdownMiddleware|string>|null $shutdownMiddleware = null ]) : Route
Parameters
- $actionName : string
-
URLとして使用されるパス, パス先頭が : でURLパラメータとなり、パラメータ名の @ 以降は一致正規表現となる。
- $httpMethod : HttpMethod|array<string|int, HttpMethod>
-
使用するHTTPメソッド。
- $methodName : string
-
呼び出されるコントローラメソッド。
- $middleware : array<string|int, IMiddleware|string>|null = null
-
専用ミドルウェア。 第一要素が CLEAR_MIDDLEWARE であれば既存のミドルウェアを破棄する。nullの場合はコンストラクタで渡されたミドルウェアが使用される。
- $shutdownMiddleware : array<string|int, IShutdownMiddleware|string>|null = null
-
専用終了ミドルウェア。 第一要素が CLEAR_MIDDLEWARE であれば既存のミドルウェアを破棄する。nullの場合はコンストラクタで渡されたミドルウェアが使用される。
Tags
Return values
RoutegetAction()
メソッド・リクエストパスから登録されているアクションを取得。
public
getAction(HttpMethod $httpMethod, RequestPath $requestPath) : RouteAction|null
Parameters
- $httpMethod : HttpMethod
-
HTTPメソッド。
- $requestPath : RequestPath
-
リクエストパス
Return values
RouteAction|null —存在する場合にクラス・メソッドのペア。存在しない場合は null
getExcludeIndexPattern()
コントローラに対してインデックスを付与しないパターン。
protected
getExcludeIndexPattern() : string
- APIとかにインデックスは不要となる
- このパターンに該当しない場合、無名のアクションとして
index
メソッドが自動登録される。
Tags
Return values
stringcombineMiddleware()
ミドルウェア組み合わせ。
private
static combineMiddleware(array<string|int, IMiddleware|IShutdownMiddleware|class-string> $baseMiddleware[, array<string|int, IMiddleware|IShutdownMiddleware|class-string>|null $middleware = null ]) : array<string|int, IMiddleware|IShutdownMiddleware|class-string>
Parameters
- $baseMiddleware : array<string|int, IMiddleware|IShutdownMiddleware|class-string>
- $middleware : array<string|int, IMiddleware|IShutdownMiddleware|class-string>|null = null
Tags
Return values
array<string|int, IMiddleware|IShutdownMiddleware|class-string>getActionCore()
アクション取得内部実装。
private
getActionCore(HttpMethod $httpMethod, Action $action, array<non-empty-string, string> $urlParameters) : RouteAction
Parameters
- $httpMethod : HttpMethod
- $action : Action
- $urlParameters : array<non-empty-string, string>