簡體   English   中英

在Smarty中如何在tpl文件中使用php代碼?

[英]How to use php code in tpl file in collabtive in smarty?

我需要在smarty的tpl文件中使用php代碼。 我用{php} echo "hello"; {/php} {php} echo "hello"; {/php}但是我需要在php代碼中使用一個聰明的變量。

例如,我需要在index.tpl文件中的以下php代碼中使用以下變量{$myprojects[project].ID}

{php}
    $qry = "select name from tasklist WHERE project = ".{/php} { {php}$myprojects[project].ID {/php} } {php}." ";
    echo $qry;
{/php}

每個模板中都有一個$this Smarty對象:

$this->get_template_vars('myprojects')

您必須像這樣編寫代碼

{php}
    $var = $this->get_template_vars('myprojects');
    // if it is not an array you can use directly and if it is an array use as below.
        $qry = "select name from tasklist WHERE project = ".$var['key'];
        echo $qry;
    {/php}

就您的知識和更好的編碼幫助而言,請參見下文

最好您可以在您的php文件中創建一個類並調用該類的對象,並開發一個函數以獲取所需的輸出。

    $objMyF = new my_functions();
    $smarty->assign('objMyF',$objMyF);

    //and in your tpl file you can call its functions by
    {$objMyF->function_name($var)}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM