Thinkphp5.1获取项目根目录以及子目录路径的方法实例讲解
作者:祝君圆梦 发布时间:2023-11-20 00:55:58
标签:Thinkphp5,目录
导读:
最近使用Thinkphp5.1做开发,在使用LOG_PATH常量(日志路径)时发生报错,因为之前一直使用5.0的框架,换到5.1版本后,出现这种情况,很明白是官方做了调整,所以特地去看了官方说明。
官方文档:https://www.kancloud.cn/manual/thinkphp5_1/
常量调整
Thinkphp5.1取消了所有的框架内置常量(不影响应用代码中的自定义常量),如需获取,请使用think\facade\App类的内置方法以及think\facade\Env类获取。
5.0常量 | 5.1获取方法 |
---|---|
EXT | 取消,固定使用 .php |
IS_WIN | 取消 |
IS_CLI | 取消 |
DS | 使用PHP自带 DIRECTORY_SEPARATOR |
ENV_PREFIX | 取消,固定使用PHP_ |
THINK_START_TIME | App::getBeginTime() |
THINK_START_MEM | App::getBeginMem() |
THINK_VERSION | App::version() |
THINK_PATH | Env::get(‘think_path') |
LIB_PATH | Env::get(‘think_path') . ‘library/' |
CORE_PATH | Env::get(‘think_path') . ‘library/think/' |
APP_PATH | Env::get(‘app_path') |
CONFIG_PATH | Env::get(‘config_path') |
CONFIG_EXT | App::getConfigExt() |
ROOT_PATH | Env::get(‘root_path') |
EXTEND_PATH | Env::get(‘root_path') . ‘extend/' |
VENDOR_PATH | Env::get(‘root_path') . ‘vendor/' |
RUNTIME_PATH | Env::get(‘runtime_path') |
LOG_PATH | Env::get(‘runtime_path') . ‘log/' |
CACHE_PATH | Env::get(‘runtime_path') . ‘cache/' |
TEMP_PATH | Env::get(‘runtime_path'). ‘temp/' |
MODULE_PATH | Env::get(‘module_path') |
说明:通过Env类的get方法获取路径变量的时候不区分大小写。
Thinkphp5.1打印独立日志的方法:
/**
* 打印日志
* $msg 日志内容
*/
function printLog($msg) {
$path=LOG_PATH .date('Y-m-d').".txt";
file_put_contents($path, "【" . date('Y-m-d H:i:s') . "】\r\n" . $msg . "\r\n\r\n", FILE_APPEND);
}
来源:https://blog.csdn.net/qq15577969/article/details/114372000


猜你喜欢
- php操作xml最近计划写个人的小网站,一系列原因选择了用php来写,最大的问题就是虽然php很流行,但我从来没有接触过php,看了一个多星
- 网页广告 Banner 设计图文手册:采用以下要点来改善你的BANNER。广告并不便宜。 确信你的广告被第一时间读到。使用像这样的Sans
- 本文实例讲述了JS实现的倒计时效果。分享给大家供大家参考,具体如下:我们经常会看到某些网站在注册的时候喜欢搞个按钮倒计时的效果,就是多少秒之
- 在ASP中,除了ADODB、Scripting 等一些常用组件外,我们还可以用微软的ActiveX方法来轻松捕获哟: <%u
- 在 Go 语言中,map 是一种非常常见的数据类型,它可以用于快速地检索数据。Go 语言中的 map 与其他编程语言中的类似的数据类型相比,
- 第一种方法: 代码如下:Minimsdn.com为您提供的代码: -- Turn ON [Display IO Info when exec
- 如要让数据库进行自动管理,则管理员需要预先定义一些可预测的管理任务以及这些任务发送的条件。当满足这些指定的条件,则数据库会自动运行管理员指定
- 解决安装Office2003 SP2后不能打开Access的问题手动更改注册表要解决此问题, 手动更改计算机上注册表位置启动 Access
- 虽然你可以使用一个类似的技术以拒绝过大的文件(通过检查$uploadedfile_size变量),但是通常这不是一个好主意。在得到这个变量之
- SQL Server内存会不断增加当 SQL Server 数据库引擎在 Microsoft? Windows NT? 或 Windows?
- 触发器权限和所有权CREATE TRIGGER 权限默认授予定义触发器的表所有者、sysadmin 固定服务器角色成员以及 db_owner
- 年前接到QCon的邀请,颇感意外。在我的印象里,QCon大会是后端开发工程师和架构师的技术大会。后来去QCon大会的官网搜索了下,发现原来Q
- PHP echo() 函数实例输出一些文本:<?php echo "Hello world!"; ?>定义和
- 前言笔者用的是mac开发,但是mac自带的php功能安装十分不方便,并且和线上的linux开发环境不一致。在没有用docker之前一直用va
- 代码如下:using System; using System.Data; using System.Configuration
- var iframe = document.createElement("iframe"); iframe.id = &
- 使用access数据库时可能用到的数据转换:类型转换涵数:函数 返回类型 expression 参数范围CBool Boolean 任何有效
- 经过了上个星期的努力学习,对处理html又有了新的发现感觉真的很不错可以说js的威力在处理html代码方面我又有所领悟了1、截取特定长度字符
- 做一个总结,把自己这些年的从业经历和观感罗列一下,某些话可能触及到个人神经,但它们没有恶意。设计师喜欢把世界想象得很美好,社会很和谐,但是这
- <html> <head> <title>Login</title> <meta ht