Smarty:include_php函數

2018-10-14 11:57 更新

{include_php}

重要提示

{include_php}是廢棄的函數,用注冊插件的方式來將程序代碼和顯示分離,是更好的選擇。 在Smarty 3.1,{include_php}僅在SmartyBC中可用.

參數名稱類型必選參數默認值說明
filestringYesn/a載入PHP文件的絕對路徑
oncebooleanNoTRUE是否僅載入一次該PHP文件,即使多次執(zhí)行。
assignstringNon/a將包含文件的輸出賦值給變量

可選標記:

名稱說明
nocache關閉包含PHP文件的緩存

{include_php}用于載入一個PHP文件到模板中。 屬性中的file路徑可以是絕對路徑,或是相對于 $trusted_dir的路徑。 如果安全機制開啟,那么只有在$trusted_dir目錄中的文件才可以被載入。 參見安全機制。

默認情況下,該PHP文件僅會載入一次,即使多次執(zhí)行模板。 你可以設置once屬性使其每次執(zhí)行都載入。 當once設置為FALSE,PHP文件將在每次模板執(zhí)行的時候都會被載入。

你可以設置可選的屬性assign,來將{include_php}載入的內容 賦值給一個指定的模板變量,而不是輸出。

在載入的PHP文件中,可以通過$_smarty_tpl->smarty來獲取到當前的Smarty對象。

Example 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}, 資源 和 組件化模板


以上內容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號