MIOLO20
Carregando...
Procurando...
Nenhuma entrada encontrada
mdbal.class
Ir para a documentação deste ficheiro.
1<?php
2
37
38class MDbal
39{
40 private $database;
41 private $conn;
42 private $conf;
43
49 public function __construct($database)
50 {
52 $doctrineDir = $MIOLO->getConf('home.classes') . '/extensions/doctrine-dbal';
53 require "$doctrineDir/Doctrine/Common/ClassLoader.php";
54
55 $classLoader = new ClassLoader('Doctrine', $doctrineDir);
56 $classLoader->register();
57 $config = new \Doctrine\DBAL\Configuration();
58
59 if ( $database )
60 {
61 $this->database = $database;
62 $this->conf = self::getConf($database);
63 $this->connect();
64 }
65 }
66
74 private static function getConf($database)
75 {
76 if ( !$database )
77 {
78 return;
79 }
81
82 switch ( $MIOLO->getConf("db.$database.system") )
83 {
84 case 'mysql':
85 $conf['driver'] = 'pdo_mysql';
86 $conf['dbname'] = $MIOLO->getConf("db.$database.name");
87 $conf['host'] = $MIOLO->getConf("db.$database.host");
88 $conf['port'] = $MIOLO->getConf("db.$database.port");
89 break;
90
91 case 'sqlite':
92 $conf['driver'] = 'pdo_sqlite';
93 $conf['path'] = $MIOLO->getConf("db.$database.name");
94 break;
95
96 case 'postgres':
97 $conf['driver'] = 'pdo_pgsql';
98 $conf['dbname'] = $MIOLO->getConf("db.$database.name");
99 $conf['host'] = $MIOLO->getConf("db.$database.host");
100 $conf['port'] = $MIOLO->getConf("db.$database.port");
101 break;
102
103 case 'oracle':
104 $conf['driver'] = 'pdo_oci';
105 $conf['dbname'] = $MIOLO->getConf("db.$database.name");
106 $conf['host'] = $MIOLO->getConf("db.$database.host");
107 $conf['port'] = $MIOLO->getConf("db.$database.port");
108 break;
109 }
110
111 $conf['user'] = $MIOLO->getConf("db.$database.user");
112 $conf['password'] = $MIOLO->getConf("db.$database.password");
113
114 return $conf;
115 }
116
120 public function connect()
121 {
122 $this->conn = \Doctrine\DBAL\DriverManager::getConnection($this->conf);
123 }
124
128 public function disconnect()
129 {
130 $this->conn->close();
131 }
132
139 public function prepare($sql)
140 {
141 return $this->conn->prepare($sql);
142 }
143
149 public function getConn()
150 {
151 return $this->conn;
152 }
153
159 public function getSchemaManager()
160 {
161 return $this->conn->getSchemaManager();
162 }
163
169 public function createSchema()
170 {
171 return $this->conn->getSchemaManager()->createSchema();
172 }
173
179 public static function createConnection($database)
180 {
182 $doctrineDir = $MIOLO->getConf('home.classes') . '/extensions/doctrine-dbal';
183 require "$doctrineDir/Doctrine/Common/ClassLoader.php";
184
185 $classLoader = new ClassLoader('Doctrine', $doctrineDir);
186 $classLoader->register();
187
188 return \Doctrine\DBAL\DriverManager::getConnection(self::getConf($database));
189 }
190}
191?>
getConn()
Definição mdbal.class:149
prepare($sql)
Definição mdbal.class:139
static createConnection($database)
Definição mdbal.class:179
connect()
Definição mdbal.class:120
getSchemaManager()
Definição mdbal.class:159
disconnect()
Definição mdbal.class:128
createSchema()
Definição mdbal.class:169
__construct($database)
Definição mdbal.class:49
static getInstance()
Definição miolo.class:134