CakePHPで現在のパスやURLを取得する

CakePHPを使っているときに現在のURLを得る方法が分からなかったのでメモ。
第二引数をtrueにするとURLが、falseにするとスラッシュから始まる絶対パスが返されます。
こんな便利なメソッドがあったとは・・・危うくURL定数を作るところでした。
第一引数をnullにすると現在のパスがそのまま返ってくるのも便利!

$html->url('/controller/action/', true); // ビューのみ
Router::url('/controller/action/', true); // コントローラやモデルなどどこでも可

HTMLヘルパーはViewでしか使えないのに対して、
Routerクラスは静的クラスなのでどこからでもアクセスできます。

2011年12月05日追記:
CakePHP2.2ではHTMLヘルパーの参照方法が変わっていたので追記しておきます。
引数の仕様は同じで第二引数をtrueにするとURLになり、
false(デフォルト値)にすると絶対パスです。

$this->Html->url('/controller/action/', true);
Router::url('/controller/action/', true);

2015年4月2日追記:
CakePHP3でまた使用方法が若干変わっていたので別記事(CakePHP3で現在のパスやURLを取得する)に書きました。

One thought on “CakePHPで現在のパスやURLを取得する

コメントを残す

メールアドレスが公開されることはありません。

計算問題(認証) * Time limit is exhausted. Please reload the CAPTCHA.