マーカーネット株式会社

WEB制作ブログ WEBデザイン、HTMLコーディング、PHP、スマートフォン制作などWEB制作全般に役立つ情報を発信していきます。

PHP

CakePHPのルーティング例

投稿日:2014年9月26日 更新日:

Webサイトではアドレスの構造は重要です。
CakePHPのルーティングの例について紹介します。

1. Router::connect(‘/index/’, array(‘controller’ => ‘test’, ‘action’ => ‘index’));
「http://xxxxxxxxxxxxx/index/」で、
testコントローラのindex()が呼ばれます
class TestController extends AppController {
  function index() {
  }
}

2. Router::connect(‘/index2/’, array(‘controller’ => ‘test’, ‘action’ => ‘index2’, 1));
「http://xxxxxxxxxxxxx/index2/」で、
testコントローラのindex2()が呼ばれ、引数に「1」が渡ります。
class TestController extends AppController {
  function index2($arg) {
    debug($arg); // (int) 1と表示されます
  }
}
3. Router::connect(‘/index3/’, array(‘controller’ => ‘test’, ‘action’ => ‘index3’, array(“category” => “テスト”)));
「http://xxxxxxxxxxxxx/index3/」で、
testコントローラのindex3()が呼ばれ、引数に配列「array(“category” => “テスト”)」が渡ります。
class TestController extends AppController {
  function index3($args) {
    debug($args); // array(‘category’ => ‘テスト’)と表示されます
  }
}

4. Router::connect(‘/index4/’, array(‘controller’ => ‘test’, ‘action’ => “index4”, “category” => “テスト2”));
「http://xxxxxxxxxxxxx/index4/」で、
testコントローラのindex4()が呼ばれ、$this->paramsに「array(“category” => “テスト2”)」が設定されます。
class TestController extends AppController {
  function index4() {
    debug ($this->params[“category”]); // ‘テスト2’と表示されます。
  }
}

5. Router::connect(‘/index5/’, array(‘controller’ => ‘test’, ‘action’ => ‘index5’, “prefix” => “admin”));
「http://xxxxxxxxxxxxx/index5/」で、
testコントローラのadmin_index5()が呼ばれます
class TestController extends AppController {
  function admin_index5() {
  }
}

6. Router::connect(‘/index6/*’, array(‘controller’ => ‘test’, ‘action’ => “index6”));
「http://xxxxxxxxxxxxx/index6/テスト/テスト2/テスト3」で、
testコントローラのindex6()が呼ばれ、「テスト」が$arg1, 「テスト2」が$arg2, 「テスト3」が$arg3に設定されます
class TestController extends AppController {
  function index6($arg1, $arg2, $arg3) {
    debug ($arg1); // ‘テスト’と表示されます
    debug ($arg2); // ‘テスト2’と表示されます
    debug ($arg3); // ‘テスト3’と表示されます
  }
}

-PHP

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

PHPの日付操作ライブラリについて

PHPの日付操作ライブラリについて

PHPで日付の操作を行うとき、PHPの標準の関数(date, mktime, strtotimeなど)を利用しますが、使い方に慣れるのがなかなか大変です。 そこでPHPで日付を操作するのに便利なライブ …

海外で人気のあるPHPのyiiフレームワークを使用してみました。

海外で人気のあるPHPのyiiフレームワークを使用してみました。

海外では、人気のあるPHPのyiiフレームワーク使用してみました。 1. yiiをhttp://www.yiiframework.com/ダウンロードしまして、 ソースコードを任意のwebの公開ディレ …

Laravel5を操作してみました

先月リリースされました、PHPのフレームワークLaravel5を操作してみました。 1. プロジェクトの作成 インストールするディレクトリに移動して「test」という名前のプロジェクトを作成します。 …

10月のPYPLプログラミング言語人気ランキング

10月のPYPLプログラミング言語人気ランキング

10月のPYPLプログラミング言語人気ランキング PYPL PopularitY of Programming Language index 10月のプログラミング言語人気ランキングの発表によりますと …

Google App EngineでPHP正式に利用可能

Google App EngineでPHP正式に利用可能

グーグルが提供するクラウドサービスGoogle App Engineでいままではユーザーを限定して利用可能でしたPHPが、10月8日から限定ユーザ以外の人も利用することが可能になりました。 https …