thinkphp中常用的系统常量和系统变量


Posted in Javascript onMarch 05, 2014

----------------------------------------模板中使用的系统变量和常量----------------------------------------
(1)系统变量:在模板中输出系统变量:包括server、env、session、post、get、request、cookie     
{$Think.server.script_name} // 输出$_SERVER变量
{$Think.session.session_id|md5} // 输出$_SESSION变量 
{$Think.get.pageNumber} // 输出$_GET变量 
{$Think.cookie.name}  // 输出$_COOKIE变量

以上方式还可以写成:
{$_SERVER.script_name} // 输出$_SERVER变量
{$_SESSION.session_id|md5} // 输出$_SESSION变量 
{$_GET.pageNumber} // 输出$_GET变量 
{$_COOKIE.name}  // 输出$_COOKIE变量

系统常量 :使用$Think.const 输出
注意:server、cookie、config不区分大小写,但是变量区分大小写。例如:
{$Think.server.script_name}和{$Think.SERVER.script_name}等效
SESSION 、COOKIE还支持二维数组的输出

例如:
{$Think.CONFIG.user.user_name}
{$Think.session.user.user_name}
系统不支持三维以上的数组输出。

(2)语言变量:输出项目的当前语言定义值

{$Think.lang.page_error}
{$Think.const.MODULE_NAME}

或者直接使用
{$Think.MODULE_NAME}

(3)特殊变量 :由ThinkPHP系统内部定义的常量

{$Think.version}  //版本
{$Think.now} //现在时间  
{$Think.template|basename} //模板页面  
{$Think.LDELIM} //模板标签起始符号  
{$Think.RDELIM} //模板标签结束符号
(4)配置参数 :输出项目的配置参数值

{$Think.config.db_charset}

输出的值和 C('db_charset') 的结果是一样的。

----------------------------------------Action中使用的系统常量 ----------------------------------------
THINK_PATH // ThinkPHP 系统目录
APP_PATH // 当前项目目录
APP_NAME // 当前项目名称
MODULE_NAME //当前模块名称
ACTION_NAME // 当前操作名称
TMPL_PATH // 项目模版目录
LIB_PATH // 项目类库目录
CACHE_PATH // 项目模版缓存目录
CONFIG_PATH //项目配置文件目录
LOG_PATH // 项目日志文件目录
LANG_PATH // 项目语言文件目录
TEMP_PATH //项目临时文件目录
PLUGIN_PATH // 项目插件文件目录
VENDOR_PATH // 第三方类库目录
DATA_PATH // 项目数据文件目录
IS_APACHE // 是否属于 Apache
IS_IIS //是否属于 IIS
IS_WIN //是否属于Windows 环境
IS_LINUX //是否属于 Linux 环境
IS_FREEBSD //是否属于 FreeBsd 环境
NOW_TIME // 当前时间戳
MEMORY_LIMIT_ON // 是否有内存使用限制
OUTPUT_GZIP_ON // 是否开启输出压缩
MAGIC_QUOTES_GPC // MAGIC_QUOTES_GPC
THINK_VERSION //ThinkPHP 版本号
LANG_SET // 浏览器语言
TEMPLATE_NAME //当前模版名称
TEMPLATE_PATH //当前模版路径
__ROOT__ // 网站根目录地址
__APP__ // 当前项目(入口文件)地址
__URL__ // 当前模块地址
__ACTION__ // 当前操作地址
__SELF__ // 当前 URL 地址
TMPL_FILE_NAME //当前操作的默认模版名(含路径)
WEB_PUBLIC_URL //网站公共目录
APP_PUBLIC_URL //项目公共模版目录
---------------------------------------- 模板中使用的系统常量 ----------------------------------------
__ROOT__ // 网站根目录地址
__APP__ // 当前项目(入口文件)地址
__URL__ // 当前模块地址
__ACTION__ // 当前操作地址
__SELF__ // 当前 URL 地址
__PUBLIC__ // 网站公共目录
../Public (不区分大小写) // 项目公共模版目录
注:当我们使用常量时,在模板被加载后在浏览器查看源码,我们观察某些使用了常量的URL,会发现一个现象,看不到服务器的ip地址,URL是从项
目名开始的,那为什么能正确访问对应的控制器呢?实际上这是浏览器给我们开了一个玩笑,当我们将鼠标移动到该URL上,单击右键,复制源码中的
URL,粘贴到别的地方,服务器的ip就会显示出来了,可见服务器ip是被包含进了该URL中使用的常量的。
---------------------------------------- 自定义常量 ----------------------------------------
在项目文件夹 (如:Home) 中的Common文件夹下新建common.php
加入如下语句:
define('XXX', XXX); //第一个参数是常量名,第二个参数是常量值

Javascript 相关文章推荐
jquery插件 cluetip 关键词注释
Jan 12 Javascript
jQuery实现鼠标点击弹出渐变层的方法
Jul 09 Javascript
12306 刷票脚本及稳固刷票脚本(防挂)
Jan 04 Javascript
vue实现todolist单页面应用
Apr 11 Javascript
angular第三方包开发整理(小结)
Apr 19 Javascript
vue自定义底部导航栏Tabbar的实现代码
Sep 03 Javascript
express 项目分层实践详解
Dec 10 Javascript
微信小程序用户授权,以及判断登录是否过期的方法
May 10 Javascript
基于layui的下拉列表的数据回显方法
Sep 24 Javascript
javascript浅层克隆、深度克隆对比及实例解析
Feb 09 Javascript
vue中解决微信html5原生ios虚拟键返回不刷新问题
Oct 20 Javascript
浅谈Web Storage API的使用
Jun 23 Javascript
js判断ie版本号的简单实现代码
Mar 05 #Javascript
浅析tr的隐藏和显示问题
Mar 05 #Javascript
jQuery性能优化的38个建议
Mar 04 #Javascript
javascript设计模式之工厂模式示例讲解
Mar 04 #Javascript
js调用iframe实现打印页面内容的方法
Mar 04 #Javascript
JavaScript的21条基本知识点
Mar 04 #Javascript
js的2种继承方式详解
Mar 04 #Javascript
You might like
PHP+MYSQL开发工具及资源收藏
2007/01/02 PHP
php使用strip_tags()去除html标签仍有空白的解决方法
2016/07/28 PHP
jQuery对象和DOM对象使用说明
2010/06/25 Javascript
jquery1.4.2 for Visual studio 2010 模板文件
2010/07/14 Javascript
JavaScript高级程序设计 阅读笔记(十三) js定义类或对象
2012/08/14 Javascript
JS远程获取网页源代码实例
2013/09/05 Javascript
jQuery.lazyload+masonry改良图片瀑布流代码
2014/06/20 Javascript
js实现在同一窗口浏览图片
2014/09/17 Javascript
jQuery实现动态表单验证时文本框抖动效果完整实例
2015/08/21 Javascript
jQuery插件formValidator自定义函数扩展功能实例详解
2015/11/25 Javascript
不用一句js代码初始化组件
2016/01/27 Javascript
JS基于clipBoard.js插件实现剪切、复制、粘贴
2016/05/03 Javascript
Angular5中调用第三方js插件的方法
2018/02/26 Javascript
vue select组件的使用与禁用实现代码
2018/04/10 Javascript
通过函数作用域和块级作用域看javascript的作用域链
2018/08/05 Javascript
对angularJs中2种自定义服务的实例讲解
2018/09/30 Javascript
Intellij IDEA搭建vue-cli项目的方法步骤
2018/10/20 Javascript
如何在vue里面优雅的解决跨域(路由冲突问题)
2019/01/20 Javascript
关于vue利用postcss-pxtorem进行移动端适配的问题
2019/11/20 Javascript
JS实现点击下拉列表文本框中出现对应的网址,点击跳转按钮实现跳转
2019/11/25 Javascript
[03:37]2016完美“圣”典 风云人物:Mikasa专访
2016/12/07 DOTA
python3批量删除豆瓣分组下的好友的实现代码
2016/06/07 Python
Python利用itchat对微信中好友数据实现简单分析的方法
2017/11/21 Python
python+selenium实现自动抢票功能实例代码
2018/11/23 Python
Python发送邮件功能示例【使用QQ邮箱】
2018/12/04 Python
tensorflow生成多个tfrecord文件实例
2020/02/17 Python
Python中socket网络通信是干嘛的
2020/05/27 Python
Python如何用wx模块创建文本编辑器
2020/06/07 Python
viagogo波兰票务平台:演唱会、体育比赛、戏剧门票
2018/04/23 全球购物
美国在线打印网站:Overnight Prints
2018/10/11 全球购物
统计每一学生的平均成绩
2014/06/06 面试题
初级党校心得体会
2014/09/11 职场文书
县委常委班子专题民主生活会查摆问题及整改措施
2014/09/27 职场文书
事业单位年度考核评语
2014/12/31 职场文书
企业宣传语大全
2015/07/13 职场文书
思想工作总结范文
2015/08/12 职场文书