1. 程式人生 > 實用技巧 >PHP 模板中的函式應用

PHP 模板中的函式應用

在設計模板中,使用 Smarty 的語法總結後只有兩種:一種是變數,另一種則是函式。在Smarty 3.0中提供了可以直接在模板中呼叫 PHP 的系統函式功能,但是美工能瞭解多少個 PHP函式呢?雖然在模板中直接呼叫函式的方式在 PHP 中呼叫的形式是一致的,但是並不推薦這樣使用。

<?php
       /* 在PHP中自動以一個函式 */
       function myfun(){
              return date("H:i:s");
       }
       /* 顯示 index.tpl 模板 */
       $snarty->display(‘index.tol’);
?>

  模板檔案 index.tpl 的原始碼,訪問 PHP 的系統函式和自定義函式請看下面:

{date("Y-m-d",time())}     {* 呼叫 PHP 的系統函式 date()和 time() *}
{nyfun()}                         {* 呼叫 PHP 的自定義函式 myfun() *}

  輸出結果如下所示:

2020-07-28 13:28:36

  如果直接使用模板變數符號引用 PHP 函式,這樣的函式應該有返回值。這樣的方式如果是由程式設計師去開發模板時使用還比較合適,要是讓美工去呼叫 PHP 函式,最好還是按Smarty 2.0 中延續過來的方法。先把函式註冊成Smarty 的外掛,使用 PHP 的函式成為Smarty 標籤的行駛,這樣美工就可以按照 HTML 標籤的語法格式去呼叫 PHP 的函數了, 這個對不太瞭解 PHP 語法的美工來說還是有必要的。在模板裡分為Smarty 內建函式和自定義函式兩種。內建函式Smarty 函式將在Smarty 內部工作,不能對它們進行修改。自定義函式通過拆件換成了Smarty 標籤(擴充外掛)是在本章後面介紹的內容,這兒先簡單介紹一下Smarty 函式的型別和一些基本的使用方法。在Smarty 中常用的函式型別有三種:函式、塊函式、變數修改器。