使用Smarty之变量信息的使用
2016-10-25 15:45
246 查看
三种变量信息的使用
1.assign变量信息使用
2.保留变量信息
3.配置变量信息
1.assign变量信息的使用前面已经介绍过了。
2.保留变量信息
对php中的超全局数组变量信息的使用
例如:$_GET、$_POST、$_SESSION、$_COOKIE、$_REQUEST\、$_SERVER、\$_ENV、\$GLOBALS、\$_FILES、常量信息
在模板文件中可以直接使用保留变量(全局变量)信息
如:
这里$smarty是模板引擎的一个保留变量(“关键字”)
服务器端文件(02.php)
模板文件(02.html)
运行结果为:
3.配置变量信息
网站上有一些比较简单的变量信息,前端人员可以自行定义并调用。这样可以脱离后端的依赖。配置变量是不需要php程序来提供的。
如网易首页页脚的一些信息:
以上简单的信息可以通过“配置文件”给维护并使用。
在Smarty.class.php中查找__construct,可以看到配置文件的路径相关信息
在工作目录创建一个配置(configs)文件夹,在该文件夹下,创建一个自定义文件名的文本文件(如:site.conf)
使用配置变量:
左标记# 变量名称 #右标记
即{#名称#}
或者{$smarty.config.名称}
03.html:
当模板文件中的css,或者js脚本中出现{ }时,会当成Smarty的定界符来编译,造成冲突。解决方法:
1.把smarty的标记{ }更改为其他的标记;
2.给{ }标记的开始和结束加空格;
3.使用{literal} / {/literal}标记,被{literal} {/literal}标记的部分不会被Smarty解析。
1.assign变量信息使用
2.保留变量信息
3.配置变量信息
1.assign变量信息的使用前面已经介绍过了。
2.保留变量信息
对php中的超全局数组变量信息的使用
例如:$_GET、$_POST、$_SESSION、$_COOKIE、$_REQUEST\、$_SERVER、\$_ENV、\$GLOBALS、\$_FILES、常量信息
在模板文件中可以直接使用保留变量(全局变量)信息
如:
{$smarty.get.xxx} //获得地址栏信息 {$smarty.post.xxx} {$smarty.session.xxx} {$smarty.cookies.xxx} {$smarty.request.xxx} {$smarty.server.xxx} {$smarty.env.xxx}
这里$smarty是模板引擎的一个保留变量(“关键字”)
服务器端文件(02.php)
<?php define('HOST', 'CQUPT'); require "./libs/Smarty.class.php"; $sm = new Smarty; $sm -> assign("name", $_GET['name']);//assign变量信息 $sm -> display("02.html");
模板文件(02.html)
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title>Untitled Document</title> </head> <body> <h2>保留变量的使用</h2> <div>{$name}</div> <div>姓名:{$smarty.get.name}</div> <div>年龄:{$smarty.get.age}</div> <div>主机名:{$smarty.const.HOST}</div> <div>时间戳:{$smarty.now}</div> <div>当前模板名称:{$smarty.template}</div> <div>当前模板目录名称:{$smarty.current_dir}</div> <div>模板引擎版本:{$smarty.version}</div> <div>模板引擎定界符:{$smarty.ldelim} ... {$smarty.rdelim}</div> </body> </html>
运行结果为:
3.配置变量信息
网站上有一些比较简单的变量信息,前端人员可以自行定义并调用。这样可以脱离后端的依赖。配置变量是不需要php程序来提供的。
如网易首页页脚的一些信息:
以上简单的信息可以通过“配置文件”给维护并使用。
在Smarty.class.php中查找__construct,可以看到配置文件的路径相关信息
$this->setConfigDir('.' . DS . 'configs' . DS);
在工作目录创建一个配置(configs)文件夹,在该文件夹下,创建一个自定义文件名的文本文件(如:site.conf)
//stie.conf NETWORK=互联网出版许可证粤002号 POLICE=京公网安备 11000002000013号 DONG=广东省通信管理局
使用配置变量:
左标记# 变量名称 #右标记
即{#名称#}
或者{$smarty.config.名称}
03.html:
<!--引入配置文件--> {config_load file = "site.conf"} <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title>Untitled Document</title> </head> <body> <h2>配置变量的使用</h2> {#NETWORK#}<br /> {#POLICE#}<br /> {#DONG#}<br /> <!--也可以通过下面这种方式--> {$smarty.config.DONG}<br /> </body> </html>
当模板文件中的css,或者js脚本中出现{ }时,会当成Smarty的定界符来编译,造成冲突。解决方法:
1.把smarty的标记{ }更改为其他的标记;
2.给{ }标记的开始和结束加空格;
3.使用{literal} / {/literal}标记,被{literal} {/literal}标记的部分不会被Smarty解析。
相关文章推荐
- 需要DLL函数输出的结果信息,尽量使用传入参数做为输出变量~!
- php smarty模版引擎中变量操作符及使用方法
- smarty的使用变量
- smarty使用变量(从配置文件读取变量 +Smarty变量调节器)
- 有的网站的相关内容必须要在登录后才可以查看,其登录信息保存在session变量之中。这样,使用asphttp等组件就难以正确得到所要的信息。
- smarty手记4--使用保留变量
- Smarty中的请求变量和保留变量的使用范例
- smarty中变量的使用
- smarty中使用变量
- php使用Smarty的相关注意事项及访问变量的几种方式
- php smarty模版引擎中变量操作符及使用方法
- PHP 中使用 Smarty 之一:变量的使用
- SMARTY模板中如何使用get,post,request,cookies,session,server变量(摘)
- 在SMARTY中使用变量(一)
- PHP 中使用 Smarty 之五:Smarty 内置变量调解器
- php中smarty模版引擎中常用的20个变量操作符及使用方法!
- php smarty模版引擎中变量操作符及使用方法
- PHP 中使用 Smarty 之三:Smarty中的保留变量
- smarty使用变量与变量调节器
- php使用Smarty的相关注意事项及访问变量的几种方式