Ian*_*Ian 2 php variables mysqli globals
创建mysqli对象后,处理$ db_conn变量的最佳方法是什么?
我一直在用
$GLOBALS['_sql'] = new mysqli(...);
Run Code Online (Sandbox Code Playgroud)
但这看起来很脏.我见过的另一种选择是不断地将连接var传递给调用它的每个函数,但这是一个巨大的痛苦.
我使用我经常调用的Singleton类DatabaseManager.通过调用静态公共方法getDB(),我永远不必担心传递数据库,因为它可以在任何地方使用.这是一个简短的存根:
class DatabaseManager
{
private static $instance;
private $db_connection;
public initDBConnection($connectionInfo) {
//make connection
}
public static function getInstance()
{
if (self::$instance == null) {
$className = __CLASS__;
self::$instance = new $className();
}
return self::$instance;
}
public static function getDB()
{
return self::getInstance()->db_connection;
}
}
Run Code Online (Sandbox Code Playgroud)
初始化数据库连接后,只需调用DatabaseManager::getDB()即可获取数据库连接.
这种方法的优点在于它可以轻松扩展以管理与多个数据库的连接,并确保您永远不会有任何一个数据库连接.使您的连接非常有效.
| 归档时间: |
|
| 查看次数: |
1849 次 |
| 最近记录: |