数据库连接类PHP

数据库连接类PHP,php,database-connection,Php,Database Connection,用PHP创建数据库类的最佳方法是什么?我用的是静态的。我也应该使用final吗?如果是,如何和在哪里?(我正在使用MySQLi而不是PDO) 数据库连接文件是否有某种标准做法?如果要创建一个类,最好将依赖项注入connect()函数或_construct()函数,以便轻松测试。我将把DB_HOST等变量放入一个配置数组中,并在调用它时将其传递给您的方法,这样您就可以为不同的环境或测试传递不同的数组。只是我马上就能看到的东西。有很多例子。您可以看看一些主要的框架是如何处理它的,因为它们通常都经过良

用PHP创建数据库类的最佳方法是什么?我用的是静态的。我也应该使用final吗?如果是,如何和在哪里?(我正在使用MySQLi而不是PDO)


数据库连接文件是否有某种标准做法?

如果要创建一个类,最好将依赖项注入connect()函数或_construct()函数,以便轻松测试。我将把DB_HOST等变量放入一个配置数组中,并在调用它时将其传递给您的方法,这样您就可以为不同的环境或测试传递不同的数组。只是我马上就能看到的东西。有很多例子。您可以看看一些主要的框架是如何处理它的,因为它们通常都经过良好的测试和编写。@BrianH.,我明白了,谢谢。您是否有一个代码可以发布,在您的编程实践中,您最喜欢它?以防万一..GitHub有几个。这里有一个和任何一个一样有效:
class DB{

    public static $Link = null;

    public static function Link(){
        if(self::$Link == null){
            self::Connect();
        }
        return self::$Link;
    }

    public static function Connect(){
        if(self::$Link == null){
            $link = mysqli_connect(DB_HOST, DB_USER, DB_PASS, DB_NAME);
            if(!$link){
                echo 'Database Connection Failed';
            } else {
                self::$Link = $link;
            }
        }
    }

}