首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> MySQL 資料庫 >> MySQL 綜合教學

《PHP 與 MySQL 程式設計(第 3 版)》—— 19.6 建立配置文件:集中管理頁面標題、訊息等表現層參數

     編輯:MySQL 綜合教學

Smarty 配置文件(.conf)讓設計師能將頁面標題、提示訊息等頻變文本集中管理,與模板邏輯解耦。格式類似 INI,支援區段與全局變量。

配置文件格式範例:configs/app.conf

# 全局變量(無區段)
page_title = "我的網站"
site_name = "Demo Corp"

# 區段 [Aggregation]
[Aggregation]
title = "新聞聚合"
intro = "歡迎來到新聞聚合頁面"
warning = """這是一個
多行的
警告訊息"""
  • 區段名以 [SectionName] 定義,區段外為全局變量。
  • 多行值必須用三個雙引號"""包裹。
  • 註釋以 # 開頭。

19.6.1 載入配置:config_load()

{* 載入全局變量 *}
{config_load file="app.conf"}

{* 載入特定區段 *}
{config_load file="app.conf" section="Aggregation"}

{* 進階參數 *}
{config_load file="app.conf" section="Aggregation" scope="parent" global=false}
參數說明
file必填,配置文件名(相對於 $config_dir)
section可選,指定區段名;省略則僅載入全局變量
scope可選,變量作用域:local(預設,僅當前模板)、parent(含父模板)、global(所有模板)

19.6.2 引用配置變量的三種語法

語法範例適用場景
井號前綴 #var#<title>#page_title#</title>模板中最簡潔、最常用
物件屬性 $smarty.config.var<title>{$smarty.config.page_title}</title>需在邏輯判斷中使用變量值時
方法調用 get_config_vars(){php}$vars = $this->get_config_vars('title');{/php}PHP 代碼區塊中獲取單個或所有配置值

方法調用完整範例

{* 模板中 *}
{config_load file="app.conf" section="Aggregation"}
{php}
  $title = $this->get_config_vars('title'); // 獲取單個
  $all   = $this->get_config_vars();        // 獲取所有(陣列)
{/php}
<h1>{$title}</h1>

注意:無論使用哪種引用語法,必須先在模板中呼叫 {config_load} 載入對應文件/區段。

配置文件 vs CSS

Smarty 配置文件不會取代 CSS。樣式(顏色、字體、佈局)用 CSS;文本內容(標題、提示、標籤)用配置文件。兩者互補,共同實現表現層與內容的分離。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved