示例#1
0
function connect()
{
    $config = \configuration\load();
    if (empty($config['dsn']) || empty($config['user']) || empty($config['password'])) {
        die("Please check the configuration\\database.php file");
    }
    R::addDatabase('db', $config['dsn'], $config['user'], $config['password'], $config['frozen']);
    R::selectDatabase('db');
}
示例#2
0
 /**
  * @param array $db
  * @throws \Exception
  */
 public function __construct($db = [])
 {
     $this->db = $db;
     $this->cache = isset($db['dev']) && $db['dev'] ? true : false;
     foreach ($this->db as $key => $db) {
         if (!isset($db['user']) || !isset($db['pass']) || !isset($db['host']) || !isset($db['db'])) {
             throw new \Exception('Missing arguments for RedBean constructor');
         }
         $db['driver'] == 'sqlite' ? R::addDatabase($key, 'sqlite:/tmp/dbfile.db') : R::addDatabase($key, $db['driver'] . ':host=' . $db['host'] . ';dbname=' . $db['db'], $db['user'], $db['pass']);
     }
 }
示例#3
0
文件: DB.php 项目: txthinking/buggy
 protected static function init()
 {
     if (self::$_inited) {
         return;
     }
     $c = static::conf();
     shuffle($c['write']);
     shuffle($c['read']);
     self::$_mcs = $c['write'];
     self::$_scs = array_merge($c['read'], $c['write']);
     R::setup();
     foreach (self::$_mcs as $i => $c) {
         R::addDatabase("write:{$i}", sprintf('mysql:host=%s;port=%d;dbname=%s', $c['host'], $c['port'], $c['dbname']), $c['username'], $c['password']);
     }
     foreach (self::$_scs as $i => $c) {
         R::addDatabase("read:{$i}", sprintf('mysql:host=%s;port=%d;dbname=%s', $c['host'], $c['port'], $c['dbname']), $c['username'], $c['password']);
     }
     self::$_inited = true;
 }