2013-11-27 28 views
0

我不能寫在.tpl文件的PHP代碼以兩種方式使用PHP代碼.TPL文件中的Kohana/Smarty的框架

我試圖<?php echo 'test'; ?>

我也試過{PHP} echo 'test'; {/PHP}

但兩者返回的錯誤

on line 14 "{php}echo &quot;hello!&quot;{/php}" unknown tag "php" 
+0

你使用Kohana和Smarty嗎?如果是這樣,爲什麼(不只是其中之一)? – kero

+0

@kingkero - 我真的不確定,但我認爲Kohana來自Smarty。由於該項目顯示其在Kohana開發,但錯誤稱爲「Smarty框架」。所以,我認爲Kohana來自Smarty,兩者可能都有很大的關係。 – Kerry

+0

我對Smarty並不是很熟悉,但你的第一次嘗試對於常規視圖(在Kohana中)是沒有問題的 – kero

回答

2

我沒有使用Kohana開發工作,但使用Smarty 3,使用php tag is deprecated的。您需要在3.0中使用backwards compatibility模式。強烈建議將所有代碼邏輯放置在您的控制器或php腳本文件中,而不是您的Smarty模板。

如果您想在模板中使用PHP代碼,建議您創建custom functionsmodifiers

所以,基本上,簡短的答案是找到您的代碼(或Kohana插件)在哪裏實例化Smarty並將其更改爲使用SmartyBC,但請注意,這是非常不鼓勵的。

如果您爲Kohana使用Kohana Smarty3模塊,these code lines應該幫助您設置正確的方向。

+0

http://www.smarty.net/docs/en/bc.tpl我剛剛閱讀過這篇文章,但是想知道在哪個文件中我應該改變這個? – Kerry

+0

編輯我的答案...基本上,從Smarty更改爲SmartyBC 255和263.但是,我不知道這是否是您正在使用的模塊。 – Justin

+0

我問我應該在哪個文件中進行編輯http://www.smarty.net/docs/en/bc.tpl – Kerry