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を取得する)に書きました。