在MVC设置(PHP)中处理配置变量的正确方法

在MVC设置(PHP)中处理配置变量的正确方法,php,model-view-controller,Php,Model View Controller,我正在用PHP编写我的第一个基本的基本MVC模式设置。我知道全局变量不好,我也知道我不希望我的所有类都能访问我的所有配置变量 我有一个settings.php文件,我想在其中定义一组常量,比如我的数据库连接信息、目录结构信息、电子邮件地址等等。它将是一个集中的位置,保存我所有的重要信息 实现配置类的最佳方法是什么,这样我的控制器和模型的每个基类只能访问它们需要的配置变量?例如,我的模型基类应该可以访问by db连接信息 基本上,我只是想问,任何人如何在不声明全局变量的情况下处理自己的MVC设置的

我正在用PHP编写我的第一个基本的基本MVC模式设置。我知道全局变量不好,我也知道我不希望我的所有类都能访问我的所有配置变量

我有一个settings.php文件,我想在其中定义一组常量,比如我的数据库连接信息、目录结构信息、电子邮件地址等等。它将是一个集中的位置,保存我所有的重要信息

实现配置类的最佳方法是什么,这样我的控制器和模型的每个基类只能访问它们需要的配置变量?例如,我的模型基类应该可以访问by db连接信息

基本上,我只是想问,任何人如何在不声明全局变量的情况下处理自己的MVC设置的配置信息,就像我们过去在过程中所做的那样


谢谢。

我推出了自己的MVC设置。(仍然强劲,可能会开源)。我这样做的方式是使用一个init脚本将所有这些常量传递给一个控制类


控制类是一个单例。因此,任何时候,当另一个类需要访问它时,它只会获取控制类的现有实例,所有变量都可以从中获得。

你会得到很多答案,因为它基本上归结为偏好

就我个人而言,我使用了配置数组。例如:

$conf['db']['username'] = "username";
$conf['db']['password'] = "password";

然后把你需要的碎片传递到它们需要去的地方。

这叫做PMVC。如果过度概括,避免模因的全局变量也有点荒谬。