{config_load}

{configload}用于从配置文件中 加载配置变量[#variables#_]($16.md)。

属性:

参数名称 类型 必选参数 默认值 说明
file string Yes n/a 载入的配置文件名
section string No n/a 指定载入配置变量的段落
scope string no local 配置变量的作用范围,取值local, parent 或 global. local表示变量只能在当前模板的上下文中使用。 parent表示变量可以在当前模板和父模板使用。 global表示变量在任何地方都可用。


Example 7.24. {config_load}

example.conf 配置文件.

  1. #this is config file comment
  2.  
  3. # global variables
  4. pageTitle = "Main Menu"
  5. bodyBgColor = #000000
  6. tableBgColor = #000000
  7. rowBgColor = #00ff00
  8.  
  9. #customer variables section
  10. [Customer]
  11. pageTitle = "Customer Info"
  12.  

模板是:

  1. {config_load file="example.conf"}
  2. {config_load "example.conf"} {* short-hand *}
  3.  
  4. <html>
  5. <title>{#pageTitle#|default:"No title"}</title>
  6. <body bgcolor="{#bodyBgColor#}">
  7. <table border="{#tableBorderSize#}" bgcolor="{#tableBgColor#}">
  8. <tr bgcolor="{#rowBgColor#}">
  9. <td>First</td>
  10. <td>Last</td>
  11. <td>Address</td>
  12. </tr>
  13. </table>
  14. </body>
  15. </html>
  16.  

配置文件 可能会有一些段落。你可以用section属性单独载入某个指定段落的配置变量。 注意全局的配置变量会同时被载入,同名的段落配置变量会覆盖全局的配置变量。

Note

配置文件的sections和内置函数{section}是不相关的,它们只是刚好名称比较像。


Example 7.25. {config_load} 载入段落配置变量

  1. {config_load file='example.conf' section='Customer'}
  2. {config_load 'example.conf' 'Customer'} {* short-hand *}
  3.  
  4. <html>
  5. <title>{#pageTitle#}</title>
  6. <body bgcolor="{#bodyBgColor#}">
  7. <table border="{#tableBorderSize#}" bgcolor="{#tableBgColor#}">
  8. <tr bgcolor="{#rowBgColor#}">
  9. <td>First</td>
  10. <td>Last</td>
  11. <td>Address</td>
  12. </tr>
  13. </table>
  14. </body>
  15. </html>
  16.  

参见$config_overwrite

参见配置文件, 配置变量, $config_dir, getConfigVars()configLoad().

原文: https://www.smarty.net/docs/zh_CN/language.function.config.load.tpl