Smarty 图标

你可以根据商标声明使用 Smarty logo。

Smarty Template Engine Smarty Template Engine

如需赞助、广告、新闻或其他咨询,请通过以下方式联系我们

使用 Smarty 的网站

广告

{include_php}

重要声明

{include_php} 已从 Smarty 中废弃,请使用已注册的插件妥善隔离演示和应用程序代码。从 Smarty 3.1 起,只能从SmartyBC获得 {include_php} 标记。

属性名称 类型 是否需要 默认值 说明
file 字符串 要作为绝对路径包含的 php 文件的名称
once 布尔值 TRUE 如果多次包含 php 文件,是否可以多次包含
assign 字符串 将 include_php 输出分配到的变量的名称

选项标志

名称 说明
nocache 禁用已包含 PHP 脚本的缓存

{include_php} 标记用于在你的模板中包含一个 php 脚本。属性 file 的路径可以是绝对路径,也可以是相对于$trusted_dir的相对路径。如果启用了安全性,那么该脚本必须位于安全策略的$trusted_dir 路径中。有关详细信息,请参阅安全性部分。

默认情况下,即使在模板中多次调用 php 文件,也只会包含一次。你可以使用once 属性指定每次都应该包含。将 once 设置为 FALSE 将在模板中每次包含 php 脚本时都包含它。

你可以选择传递assign 属性,该属性将指定一个模板变量名称,{include_php} 的输出将被分配给该名称,而不是显示输出。

smarty 对象可以作为$_smarty_tpl->smarty 在你包含的 PHP 脚本中使用。

示例 7.55. 函数 {include_php}

load_nav.php 文件

<?php

// load in variables from a mysql db and assign them to the template
require_once('database.class.php');
$db = new Db();
$db->query('select url, name from navigation order by name');
$this->assign('navigation', $db->getRows());

?>

  

模板位置

{* absolute path, or relative to $trusted_dir *}
{include_php file='/path/to/load_nav.php'}
{include_php '/path/to/load_nav.php'}             {* short-hand *}

{foreach item='nav' from=$navigation}
  <a href="{$nav.url}">{$nav.name}</a><br />
{/foreach}

  

另请参阅 {include}$trusted_dir{php}{capture}模板资源组件化模板