基本的なルーティング[FuelPHP1.7]

メモ:  Category:php

ルーティングの設定

「コントローラの規則」で URL とコントローラの関係がわかりましたが、 FuelPHP では URL とコントローラの関係を明示的に指定することもできます。

また、 URL の指定でコントローラが省略された場合やページが存在しない場合の動作など、設定ファイルとして定義することができます。

例えば、 URI でコントローラが省略された場合は、 app/config/routes.php を次のように設定します。この例では、 blog コントローラの action_index() メソッドを 実行するよう定義しています。

return array(
    '_root_'  => 'blog/index',  // The default route
);

FuelPHP のルーティングは、リクエストされた URL と左辺に記述されたルートが一致した場合、右辺の処理が実行されます。

return array(
    'about'  => 'site/about',  // http://hoge.net/about
    'admin'  => 'admin/login',  // http://hoge.net/admin
);

上記例では、 http://hoge.net/about とリクエストされた場合、 site コントローラの about メソッドが実行されることになります。

予約済みのルート

FuelPHP では、2 つの予約済みのルートがあります。

  • root:省略された場合のデフォルトルート
  • 404:コントローラやアクションが見つからない場合のルート

正規表現を使ったルーティングなど、もう少し複雑な設定もできるようです。

bluenote by BBB