smarty模板引擎从配置文件中获取数据的方法

yipeiwu_com5年前PHP代码库

本文实例讲述了smarty模板引擎从配置文件中获取数据的方法。分享给大家供大家参考。具体如下:

当某个变量值,不希望在程序中写死时,就可以把该变量写到配置文件里,并从中获取(常见的配置样式)。

第一步:先写一个配置文件,如数据库的 db.conf,后缀名conf可以随便写,db.ini也行。文件中内容的格式需要固定:key="值",每一行后面不需要添加分号或者什么,直接回国换行,如:

配置文件:db.conf

复制代码 代码如下:
host = "localhost"
username = "root"
password = "123456"
db_name = "liuyan"

模板文件:temp.tpl

使用{config_load file="db.conf"} 将文件引入进来。注意,如果写相对路径的话,要以访问的页面来看。比如这里,temp.tpl放在templates目录下,db.conf是放在与templates目录同一层,但由于浏览器访问的文件index.php与db.conf同一层,所以,引用时,直接写 {config_load file="db.conf"}  。

复制代码 代码如下:
{config_load file="db.conf"}
<html>
<h2>smarty变量操作,从配置文件中获取</h2>
<p style="color:green;">{#host#}</p>
<p style="color:red;">{#username#}</p>
</html>

浏览器访问:index.php

与从php获取变量数据不同,这里不需要用assign分配,而在模板文件里直接加载

复制代码 代码如下:
<?php
//创建smarty对象
require_once("./libs/Smarty.class.php");
$smarty = new Smarty();
$smarty->display("index.tpl");
?>

希望本文所述对大家的smarty程序设计有所帮助。

相关文章

php脚本守护进程原理与实现方法详解

本文实例讲述了php脚本守护进程原理与实现方法。分享给大家供大家参考,具体如下: 思路: 1. while 循环,若当前没有数据要操作可以休眠; 2. crontab 脚本每隔固定时间段...

php做下载文件的实现代码及文件名中乱码解决方法

最近有人问我做下载文件的方法,对于php方法如下: 复制代码 代码如下: <?php header("Content-Type: application/force-downloa...

不支持fsockopen但支持culr环境下下ucenter与modoer通讯问题

所以就怀疑是否编码问题,或者文件权限问题,或者是不是函数不支持问题,经过排查发现原来是万网的L1主机不支持fsockopen,在文件uc_client/client.php中的uc_fo...

php实现的AES加密类定义与用法示例

本文实例讲述了php实现的AES加密类定义与用法。分享给大家供大家参考,具体如下: CryptAES.class.php文件: <?php class CryptAES...

php通用防注入程序 推荐

复制代码 代码如下: function jk1986_checksql() { $bad_str = "and|select|update|'|delete|insert|*"; $ba...