think 预定义常量


预定义常量是指系统内置的常量,不会随着环境的变化而变化
系统和应用的路径常量用于系统默认的目录规范,可通过重新定义改变,如果不定制目录,常量一般不需要更改

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  >> 当前模版路径
  >> 网站根目录地址
__APP__  >> 当前项目(入口文件)地址
/home/content  >> 当前模块地址
__ACTION__  >> 当前操作地址
__SELF__  >> 当前 URL 地址
TMPL_FILE_NAME  >> 当前操作的默认模版名(含路径)
WEB_PUBLIC_URL  >> 网站公共目录
APP_PUBLIC_URL  >> 项目公共模版目录

模板中使用的系统常量
  >> 网站根目录地址
__APP__  >> 当前项目(入口文件)地址
/home/content  >> 当前模块地址
__ACTION__  >> 当前操作地址
__SELF__  >> 当前 URL 地址
__PUBLIC__  >> 网站公共目录

defined('ABSROOTPATH') || define('ABSROOTPATH', ROOT_PATH);
$module = request()->module();
if(!defined('MODULE_NAME')){
  define('CSS_PATH', $root . '/static/' . $module . '/css/');//CSS路径 /public/static/home/css/
  define('JS_PATH', $root . '/static/' . $module . '/js/'); //JS路径        
  define('IMG_PATH', $root . '/static/' . $module . '/img/');//IMG路径        
  define('UPLOAD_PATH', ABSROOTPATH.'/public/uploads/');//文件上传路径        
  define('UPLOAD_VIEWPATH', $upload_viewpath);//文件浏览路径
  define('ROOTINPUBLIC', $rootinpublic);
  define('CONTROLLER_NAME',request()->controller());
  define('MODULE_NAME',$module);
  define('ACTION_NAME',request()->action());
  define('NOW_TIME', $_SERVER['REQUEST_TIME']);
  define('SITE_URL', request()->domain());
 
  defined('IS_POST') || define('IS_POST', request()->isPost());
  defined('IS_PATCH') || define('IS_PATCH', request()->isPatch());
  defined('IS_AJAX') || define('IS_AJAX', request()->isAjax());
  defined('IS_GET')  || define('IS_GET', request()->isGet());      
 
  define('MODEL_INSERT',1);//  插入模型数据
  define('MODEL_UPDATE',2);//  更新模型数据
  define('MODEL_BOTH',3);//  包含上面两种方式
  define('MUST_VALIDATE',1); // 必须验证
  define('EXISTS_VALIDATE',0);// 表单存在字段则验证
  define('VALUE_VALIDATE',0);// 表单值不为空则验证
  define('UC_AUTH_KEY', 'tN`hys>XR.}'); //加密KEY
}