1. 程式人生 > >在smarty中通過php指令碼獲取smarty變數

在smarty中通過php指令碼獲取smarty變數

一,php 指令碼(test.php)

$smarty = new Sys_SmartyWork(CRON_HOME."/modifyInfo/tpl",CRON_HOME."/modifyInfo/tpl_c"); 

$hash = array();
$info  = array();
$info ['smarty'] = 'i am smarty!';
$info ['php'] = 'i am php';
$hash['arrInfo'] = $info;

//進行模板變數替換 
$smarty->assign($hash); 

//編譯並顯示位於./templates下的index.htm模板 
$msg = $smarty->display('test.tpl'); 

二,tpl 指令碼('test.tpl') 

{{$arrInfo.smarty}}
------------
{{ php }} 
    //php從smarty中獲取變數值
    $arrInfo = $this->_tpl_vars['arrInfo']; 
    
    //輸出  
    echo $arrInfo['php']."\r\n";
    
    //php在模板中賦值給smarty變數
    $this->_tpl_vars['myname'] = 'hello world!';
{{/php}}
{{$myname}}

三,顯示

i am smarty!
------------
i am php