如何将PHP代码添加到.tpl文件中

时间:2012-03-07 12:30:14

标签: php smarty

我需要在php文件中显示一些外部数据到.tpl文件。为此,我想将php文件包含到.tpl文件中。我试过以下代码来显示php文件内容到tpl。

{php} include('custom_code.php'); {/php}

但页面输出为include('custom_code.php');

3 个答案:

答案 0 :(得分:4)

{php}已被弃用。看看Extending Smarty With Plugins

将以下内容放入…/plugins/function.yourplugin.php

<?php
function smarty_function_yourplugin(array $params, Smarty_Template_Instance) {
    include 'your_other_file.php';
}

并在您的模板中使用:

{yourplugin}

答案 1 :(得分:1)

智能主页上有最佳实践指南。 #1是不要嵌入PHP!

http://www.smarty.net/best_practices

试试这个:{include_php file="/path/to/somefile.php"}

但请注意:

{include_php} is deprecated from Smarty, use registered plugins 
to properly insulate presentation from the application code. 
As of Smarty 3.1 the {include_php} tags are only available 
from SmartyBC.

所以最好的方法是编写一个聪明的插件,如rodneyrehm所解释的

答案 2 :(得分:1)

您不应该将PHP代码添加到模板中。它会让模板的整个想法变坏。

您必须将PHP代码添加到控制器,而不是模板。