tp5中的app目录中的extra目录的作用是什么?
了解extra目录的作用
ThinkPHP5扩展配置目录extra中自定义配置文件的管理方法
ThinkPHP5.0.1版本开始增加了扩展配置目录的概念,在应用配置目录或者模块配置目录下面增加extra子目录,下面的配置文件都会自动加载,无需任何配置。
这极大的方便了我们进行扩展配置,比如在application/extra目录下面创建一个web.php文件,内容如下:
<?php
// +----------------------------------------------------------------------
// | 网站扩展配置文件
// | Author: www.02405.com
// +----------------------------------------------------------------------
return [
'WEB_NAME' => '零五科技',
'WEB_HOST' => 'http://www.02405.com',
'WEB_BEIAN' => '辽ICP备13002105号-1',
];
这样我们很就可以方便的获取这些扩展配置信息。
在控制器中获取网站名称:
Config::get('web.WEB_NAME');
在模板中获取网站备案号:
{$Think.config.third.WEB_BEIAN}
我们还可以创建一个专门的控制器来管理这个配置文件,示例具体如下:
function add()
{
if (request()->isPost()) {
$path = 'extra/web.php';
$file = (include $path);
$config = array(
'WEB_COPYRIGHT' => input('WEB_COPYRIGHT')
);
$res = array_merge($file, $config);
$str = '<?php return [';
foreach ($res as $key => $value) {
$str .= '\'' . $key . '\'' . '=>' . '\'' . $value . '\'' . ',';
}
$str .= ']; ';
if (file_put_contents($path, $str)) {
$this->success('添加成功');
} else {
$this->error('添加失败');
}
}
}
修改的话思路相同,先读取所有配置,然后循环输出到表单,在根据提交循环写入更新。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 单元测试从入门到精通