Curry
PHP Framework

core

db

html

utility

Router

クラス概要

URIからコントローラー、アクション、パラメーターを取り出す処理を行うクラスです。
Dispatcher::dispatchメソッド内で実行され、ユーザーがこのクラスを直接利用することはほとんどありません。

デフォルトのルーティングでは、URIの第1セグメントをコントローラー、第2セグメントをアクションとして取得します。
第3セグメント以降はパラメーターとして取得し、Request::getParamsメソッドで取得できます。

ルーティングの設定はrouting.iniによって自在に設定が可能です。

Curry対応バージョン

バージョン 1.3.0 以降

クラスファイル位置

curry/core/router.php

フィールド

公開されるフィールドはありません。

メソッド

メソッド名 アクセス 概要
isRewrite public apacheのmod_rewriteを利用してのアクセスか否かをDispatcherクラスに伝えます。このメソッドにより、apacheのmod_rewriteの有効・無効が切り替わるわけではないことに注意してください。
setDefaultController public URLにコントローラーキーが含まれない場合にデフォルトとするコントローラーキーを設定します。
setDefaultAction public URLにアクションキーが含まれない場合にデフォルトとするアクションキーを設定します。
enableSubController public コントローラーサブディレクトリの利用を許可するか否かを設定します。trueを指定することで許可されます。デフォルトでは許可されていませんので、許可しない場合は明示的にこのメソッドを実行する必要はありません。
許可した場合、僅かですがパフォーマンス的に不利になります。
setControllerQueryKey public mod_rewriteを利用しない場合に、URL中のコントローラーを表すクエリ文字列のキーを指定します。コントローラーのキーはデフォルトで"c"になっていますが、これを変更したい場合にこのメソッドを実行します。
setActionQueryKey public mod_rewriteを利用しない場合に、URL中のアクションを表すクエリ文字列のキーを指定します。アクションのキーはデフォルトで"a"になっていますが、これを変更したい場合にこのメソッドを実行します。
route public URIからのディスパッチ情報の取り出しを実行します。