This article describes the use of the configuration file of PHP template engine Smarty in template variables. method. Share it with everyone for your reference, the details are as follows:
The role of the configuration file in the template is to define variables for the front-end design page. It mainly controls the appearance of the template and has nothing to do with the PHP program.
Usage steps:
1. Use $tpl->configs_dir="directory" //Specify the directory where the configuration files are stored;
2. Use <{configs_load file="config file"}> in the template to load the f configuration file. If there is a region, you can use section="region" to specify the region
The purpose of setting the region is to call the configuration file variables of different regions for different files.
In the configuration file, the area is specified through "[area name]". Other variables without a specified area are public variables, that is, every page can be used.
3. Create a configuration file in the specified directory.
The following is an example to demonstrate the idea: the main file index.php calls the template file index.tpl, and sets the configuration file variables in index.tpl (independent of the PHP program)
init.inc.php Smart template engine initialization file
<?php define('ROOT_PATH', dirname(__FILE__)); //网站根目录 require ROOT_PATH.'/libs/Smarty.class.php'; //引入 Smart 模板引擎 $_tpl = new Smarty(); //初始化一个对象 $_tpl->template_dir = ROOT_PATH.'/tpl/'; //重新设置网站的模板目录 $_tpl->compile_dir = ROOT_PATH.'./com/'; //重新设置网站的编译文件目录 $_tpl->config_dir = ROOT_PATH.'/configs/'; //重新设置网站的配置文件目录 $_tpl->left_delimiter = '<{'; //重新设置网站的左定界符 $_tpl->right_delimiter = '}>'; //重新设置网站的右定界符 ?>
index.php
<?php require 'init.inc.php'; //引入模板初始化文件 global $_tpl; $_tpl->display('index.tpl'); //载入模板文件 ?>
There are two ways to use index.tpl configuration variables:
1. <{#Configuration Variables#}>;
2. <{$smart.config.Configuration variables}>
<{config_load file="view.conf" section="one"}> <!-- view.conf文件不能写完整路径,因为在初始化文件中已经指定,section="one" 代表加载[one]区域 --> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>配置文件在模板变量中的使用</title> </head> <body> <table border="<{#border#}>" align="<{#align#}>" width="<{#tabw#}>"> <tr bgcolor="<{#bgcolor#}>" align="<{#align#}>"> <td>aaaa</td> <td>aaaa</td> <td>aaaa</td> <td>aaaa</td> <tr> <tr> <td>aaaa</td> <td>aaaa</td> <td>aaaa</td> <td>aaaa</td> <tr> <tr> <td>aaaa</td> <td>aaaa</td> <td>aaaa</td> <td>aaaa</td> <tr> <tr> <td colspan="<{#colspan#}>" align="<{#align#}>"> 区域变量的显示: <{#aa#}><br /> <{#bb#}><br /> <{#cc#}><br /> </td> </tr> </table> </body> </html>
/configs/view.conf configuration file
border=2 tabw=600 tabh=500 bgcolor=yellow align=center [one] colspan=4 aa=one section [two] bb=two section [three] cc=three section
Execution results, as shown in the figure:
Readers who are interested in more PHP-related content can check out the special topics of this site: "Basic Tutorial for Getting Started with Smarty Templates", "Summary of PHP Template Technology", "Summary of PHP Database Operation Skills Based on PDO", "PHP Operations and Operators" Usage summary", "PHP network programming skills summary", "PHP basic syntax introductory tutorial", "php object-oriented programming introductory tutorial", "php string (string) usage summary", "php mysql database operation introductory tutorial" and "Summary of Common Database Operation Skills in PHP"
I hope this article will be helpful to everyone’s PHP program design based on smarty templates.