URLと使用されるmoduleの関係

メカニズム

たいていのフレームワークに、URLからどのモジュール、アクションが呼び出されるかのルーティングの仕組みがあるものです。

lc の場合はというと、app.php に書いてあるとおり。

だいたいURLのとおりにmodulesディレクトリの中を探して、どのmoduleを使うか決定する。

該当する.phpファイル、もしくは該当するディレクトリの中のindex.phpを探す。

/aaa/bbb/ccc とリクエストされたら、次の優先順位でmodulesの中を探す。

  1. modules/aaa/bbb/ccc/index.php
  2. modules/aaa/bbb/ccc.php
  3. modules/aaa/bbb/index.php
  4. modules/aaa/bbb.php
  5. modules/aaa/index.php
  6. modules/aaa.php
  7. modules/index.php

せめて最後の modules/index.php だけは用意しておけば、どんなリクエストに対しても、何かしらの処理の実行が可能だ。

このメカニズムが都合が悪いとき、気に入らないとき、特殊ルールを入れたいときは、app.phpの該当箇所を書き換えてしまえばよい。

もともとたいした処理はしていない。

リクエストは

/module_test

使用した app/modules の中の module は

/module_test/index.php

テスト用リンク