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带动画效果幻灯片特效代码
Aug 27 Javascript
js实现文件上传表单域美化特效
Nov 02 Javascript
Jquery全屏相册插件zoomvisualizer具有调节放大与缩小功能
Nov 02 Javascript
jQuery Mobile框架中的表单组件基础使用教程
May 17 Javascript
javascript 常用验证函数总结
Jun 28 Javascript
无法获取隐藏元素宽度和高度的解决方案
Mar 07 Javascript
Vue.js实战之利用vue-router实现跳转页面
Apr 01 Javascript
如何用webpack4带你实现一个vue的打包的项目
Jun 20 Javascript
微信小程序中换行空格(多个空格)写法详解
Jul 10 Javascript
vue安装遇到的5个报错及解决方法
Jun 12 Javascript
JavaScript实现图片上传并预览并提交ajax
Sep 30 Javascript
vue+AI智能机器人回复功能实现
Jul 16 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 反向排序和随机排序代码
2010/06/30 PHP
PHP中PDO连接数据库中各种DNS设置方法小结
2016/05/13 PHP
php+Ajax无刷新验证用户名操作实例详解
2019/03/04 PHP
Laravel实现ApiToken认证请求
2019/10/14 PHP
Extjs学习笔记之六 面版
2010/01/08 Javascript
Jquery数独游戏解析(一)-页面布局
2010/11/05 Javascript
JS保留小数点(四舍五入、四舍六入)实现思路及实例
2013/04/25 Javascript
jQuery弹性滑动导航菜单实现思路及代码
2013/05/02 Javascript
深入解析JavaScript中的变量作用域
2013/12/06 Javascript
动态加载dtree.js树treeview(示例代码)
2013/12/17 Javascript
JQuery的Ajax请求实现局部刷新的简单实例
2014/02/11 Javascript
JavaScript中的console.time()函数详细介绍
2014/12/29 Javascript
jQuery表单美化插件jqTransform使用详解
2015/04/12 Javascript
网页中JS函数自动执行常用三种方法
2016/03/30 Javascript
JS hashMap实例详解
2016/05/26 Javascript
AngularJS表格详解及示例代码
2016/08/17 Javascript
jQuery文本框得到与失去焦点动态改变样式效果
2016/09/08 Javascript
利用JS提交表单的几种方法和验证(必看篇)
2016/09/17 Javascript
JS实现二叉查找树的建立以及一些遍历方法实现
2017/04/17 Javascript
Angular中的$watch、$watchGroup、$watchCollection
2017/06/25 Javascript
js实现会跳动的日历效果(完整实例)
2017/10/18 Javascript
详解使用webpack构建多页面应用
2017/12/21 Javascript
JS实现简单的浮动碰撞效果示例
2017/12/28 Javascript
JS实现的类似微信聊天效果示例
2019/01/29 Javascript
小程序getLocation需要在app.json中声明permission字段
2019/04/04 Javascript
对Layer UI 模块化的用法详解
2019/09/26 Javascript
一文秒懂JavaScript构造函数、实例、原型对象以及原型链
2020/08/25 Javascript
python使用append合并两个数组的方法
2015/04/28 Python
python 3.7.4 安装 opencv的教程
2019/10/10 Python
来自世界各地的饮料:Flavourly
2019/05/06 全球购物
银行见习期自我鉴定
2014/01/29 职场文书
大学新生军训感言
2014/02/25 职场文书
服装设计师职业生涯规划范文
2014/02/28 职场文书
高三励志标语
2014/06/05 职场文书
2015年平安创建工作总结
2015/04/29 职场文书
人生感悟经典句子
2019/08/20 职场文书