Smarty:include_php函數(shù)

2018-10-14 11:57 更新

{include_php}

重要提示

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

參數(shù)名稱類型必選參數(shù)默認(rèn)值說(shuō)明
filestringYesn/a載入PHP文件的絕對(duì)路徑
oncebooleanNoTRUE是否僅載入一次該P(yáng)HP文件,即使多次執(zhí)行。
assignstringNon/a將包含文件的輸出賦值給變量

可選標(biāo)記:

名稱說(shuō)明
nocache關(guān)閉包含PHP文件的緩存

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

默認(rèn)情況下,該P(yáng)HP文件僅會(huì)載入一次,即使多次執(zhí)行模板。 你可以設(shè)置once屬性使其每次執(zhí)行都載入。 當(dāng)once設(shè)置為FALSE,PHP文件將在每次模板執(zhí)行的時(shí)候都會(huì)被載入。

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

在載入的PHP文件中,可以通過(guò)$_smarty_tpl->smarty來(lái)獲取到當(dāng)前的Smarty對(duì)象。

Example 7.55.  {include_php} 函數(shù)

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


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)