Smarty已经废弃{php}标签,强烈建议不要使用。
请把你的PHP逻辑放到PHP程序或者插件函数中实现。
在Smarty 3.1,{php}仅在SmartyBC中可用。
{php}标签可以允许PHP代码直接嵌到模板中使用。
这些代码是否被编码,需要取决于$php_handling 的设置.
Example 7.61. {php}标签的使用
{php}
// including a php script directly from the template.
include('/path/to/display_weather.php');
{/php}
Example 7.62. {php}标签中使用全局变量来赋值变量
{* this template includes a {php} block that assign's the variable $varX *}
{php}
global $foo, $bar;
if($foo == $bar){
echo 'This will be sent to browser';
}
// assign a variable to Smarty
$this->assign('varX','Toffee');
{/php}
{* output the variable *}
<strong>{$varX}</strong> is my fav ice cream :-)
参见
$php_handling,
{include_php},
{include},
{insert}
和
组件化模板.