blob: 77804c4448bb981c6279a0614acd29fab6641f67 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
<?php
/**
* CinIsis main class.
*/
class CinIsis {
/**
* @var $db
* Database resource.
*/
var $db;
/**
* @var $implementation
* Database implementation.
*/
var $implementation;
/**
* Constructor.
*
* @param $config
* Alternative config file (defaults to 'config/config.yaml').
*
* @todo
* Config check.
*/
function __construct($config = NULL) {
if ($config == NULL) {
$config = 'config/config.yaml';
}
// Load configuration.
$config = Spyc::YAMLLoad($config);
// Load database schema.
$schema = Spyc::YAMLLoad('schemas/'. $config['database'] .'.yaml');
// Setup database connection.
$this->implementation = $config['implementation'] .'Db';
$this->db = new $this->implementation($schema);
}
}
|