cakePHP + Smarty で定数とか取ってくる方法

凄いはまってしまった><

Viewでパスがほしいとき、URLがほしいときなどあるときとか
cake の固有のグローバル定数を触りたい時どうするか。

<?php echo $WWW_ROOT ?> とかは tpl ファイルじゃできないので
どうすればいいのかな~
(単に tpl ファイルに<?php?> を書きたくないだけですがw)

ということで。

tplファイルではこれでいけます。

{$smarty.const.CAKEPHPの定数}

例えば cake の定数:WEBROOT_DIR:アプリケーションの webroot ディレクトリ名
ならこう

{$smarty.const.WEBROOT_DIR}

あとリファレンスに乗ってません(と思う。。)が、
cakeのインストールディレクトリの外からのURLは
(http://ドメイン名/test/cake/ がインストールなら /test/cake/ が入る)

{$html->base}

こうです。

thtml でやるなら

<?php echo $html->base ?>

こうかな?

ちなみに

$this->webroot

ってのもできました。
こーいう隠しデータがたくさんありそうだ!

Leave a Reply