ThinkPHP 6 中调用 Config::get() 不传参数即可获取全部一级配置键值对,返回已合并的最终配置数组;TP5 则使用 \think\Config::get(),需确保配置已初始化。

在 ThinkPHP 中,读取一级配置(即配置文件中顶层键名)的所有参数,本质是获取当前加载的配置数组的根级键值对。ThinkPHP 6 和 ThinkPHP 5 的方式略有不同,以下以 ThinkPHP 6 为主说明(TP6 是当前主流版本),并简要补充 TP5 的对应方法。
TP6:使用 Config::get() 不传参数获取全部一级配置
ThinkPHP 6 的 think\facade\Config 门面提供了静态方法 get()。当不传任何参数调用时,它会返回整个配置数组(即所有已加载配置的合并结果),且结构为「一级键 ⇒ 对应配置值(可能是数组、字符串、布尔等)」。
- 该返回值就是你想要的「一级配置参数列表」,例如
'app' => [...]、'database' => [...]、'debug' => true等 - 注意:它返回的是运行时最终生效的配置,已合并了多环境配置(如 .env、env.php)、多文件配置(app.php、database.php 等)
示例代码:
// 获取所有一级配置键及其值
$allTopConfig = Config::get();
// 输出所有一级键名
dump(array_keys($allTopConfig));
// 查看某个一级配置内容,比如数据库配置
dump($allTopConfig['database'] ?? null);
?>
TP6:只获取键名(不带值),用 array_keys(Config::get())
如果你只需要一级配置的「参数名」(即配置项名称,如 app、log、cache),而不需要具体值,直接对 Config::get() 的结果取键即可:
-
array_keys(Config::get())返回一维字符串数组,如['app', 'database', 'cache', 'session', 'debug'] - 适合用于配置检查、动态加载、权限控制等场景
TP5:类似,但需注意 Config 类路径和行为差异
ThinkPHP 5 使用 think\Config 类(非门面),同样支持无参 get() 方法:
- TP5.1+:
\think\Config::get()返回全部配置数组(同 TP6 行为) - TP5.0:
\think\Config::get()默认返回空数组,需先确保配置已加载;更稳妥的方式是访问内部存储:\think\Config::$config(但属内部属性,不推荐直接使用) - 建议 TP5 用户统一用
\think\Config::get(),并在调用前确认配置已初始化(如在控制器或命令行中执行)
注意事项
- 配置加载顺序影响结果:后加载的配置会覆盖前面同名项,
Config::get()返回的是最终合并结果 - 某些键(如
default_return_type)可能来自框架默认配置,并未显式写在配置文件中 - 若需排除系统默认项、只看用户自定义的一级键,需对比初始配置快照,一般业务中无需如此复杂
php免费学习视频:立即使用
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!











