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 相关文章推荐
11款新鲜的jQuery插件[附所有demo下载]
Jan 24 Javascript
基于jQuery的倒计时插件代码
May 07 Javascript
JQuery.Ajax之错误调试帮助信息介绍
Jul 04 Javascript
非常好用的JsonToString 方法 简单实例
Jul 18 Javascript
JavaScript中神奇的call()方法
Mar 12 Javascript
javascript解析xml实现省市县三级联动的方法
Jul 25 Javascript
jQuery实现带延迟效果的滑动菜单代码
Sep 02 Javascript
Angularjs CURD 详解及实例代码
Sep 14 Javascript
jQuery编写textarea输入字数限制代码
Mar 23 jQuery
vue路由事件beforeRouteLeave及组件内定时器的清除方法
Sep 29 Javascript
推荐几个不错的console调试技巧实现
Dec 20 Javascript
微信小程序开发(一):服务器获取数据列表渲染操作示例
Jun 01 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
CodeIgniter删除和设置Cookie的方法
2015/04/07 PHP
PHP结合Jquery和ajax实现瀑布流特效
2016/01/07 PHP
Laravel5.1框架注册中间件的三种场景详解
2019/07/09 PHP
FormValid0.5版本发布,带ajax自定义验证例子
2007/08/17 Javascript
麦鸡的TAB切换功能结合了javascript和css
2007/12/17 Javascript
基于jquery实现的一个选择中国大学的弹框 (数据、步骤、代码)
2012/07/26 Javascript
jquery 实现checkbox全选,反选,全不选等功能代码(奇数)
2012/10/24 Javascript
浅谈JavaScript 框架分类
2014/11/10 Javascript
javascript模拟命名空间
2015/04/17 Javascript
JavaScript版经典游戏之扫雷游戏完整示例【附demo源码下载】
2016/12/12 Javascript
webpack 4.0.0-beta.0版本新特性介绍
2018/02/10 Javascript
Vue使用vux-ui自定义表单验证遇到的问题及解决方法
2018/05/10 Javascript
Vue-cli@3.0 插件系统简析
2018/09/05 Javascript
实现Vue的markdown文档可以在线运行的方法示例
2018/12/11 Javascript
Angular封装搜索框组件操作示例
2019/04/25 Javascript
[03:05]《我与DAC》之xiao8:DAC与BG
2018/03/27 DOTA
[32:47]完美世界DOTA2联赛 GXR vs IO 第二场 11.07
2020/11/09 DOTA
跟老齐学Python之字典,你还记得吗?
2014/09/20 Python
Python中itertools模块用法详解
2014/09/25 Python
scrapy自定义pipeline类实现将采集数据保存到mongodb的方法
2015/04/16 Python
django之常用命令详解
2016/06/30 Python
Python打印输出数组中全部元素
2018/03/13 Python
Python异常的检测和处理方法
2018/10/26 Python
Win10下Python3.7.3安装教程图解
2019/07/08 Python
python实现的接收邮件功能示例【基于网易POP3服务器】
2019/09/11 Python
解决tensorflow打印tensor有省略号的问题
2020/02/04 Python
CSS3控制HTML元素动画效果
2014/02/08 HTML / CSS
HTML5教程之html 5 本地数据库(Web Sql Database)
2014/04/03 HTML / CSS
Bootstrap File Input文件上传组件
2020/12/01 HTML / CSS
PacSun官网:加州生活方式服装、鞋子和配饰
2018/03/10 全球购物
预防艾滋病宣传标语
2014/06/25 职场文书
舞蹈兴趣小组活动总结
2014/07/07 职场文书
2014年学校党建工作汇报材料
2014/11/02 职场文书
python实现图片批量压缩
2021/04/24 Python
SpringBoot整合阿里云视频点播的过程详解
2021/12/06 Java/Android
nginx七层负载均衡配置详解
2022/07/15 Servers