laravel连接多个不同数据库的单例类

在連接多個不同數據庫時,需要寫多個連接,爲了簡化該操作,可以使用該基類,不同的數據庫只要建立好相對應的類繼承該類,就可以使用ORM模型進行操作了。

class singletonInstance 
{

    protected static $instances = [];
    protected static $table = null;
    protected static $connection = null;

    public function __construct()
    {
        if(!isset(static::$instances[static::class])){
            if(is_null(self::$table) || is_null(self::$connection))
            {
                throw new \Exception('not defined property');
            }
            static::$instances[static::class] = DB::connection(self::connection)->table(self::$table);
        }
    }

    public static function getDB()
    {
        return static::$instances[static::class];
    }

}

posted @ 2017-06-23 16:36  秦至臻  阅读(552)  评论(0编辑  收藏  举报