/
index.php
67 lines (54 loc) · 1.41 KB
/
index.php
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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
<?php
use core\Loader;
use core\Container;
use core\Route;
use core\Request;
use core\Response;
use core\View;
use core\Conf;
use core\Bootstrap;
use core\db\DBMysqli;
error_reporting(E_ALL);
ini_set('display_errors', 'ON');
date_default_timezone_set('PRC');
// constants
define('CONF_PATH', __DIR__ . '/config/');
define('COMMON_CONFIG_PATH', CONF_PATH. 'common/');
// env
require __DIR__ . '/env.php';
define('CONFIG_PATH', CONF_PATH . ENV . '/');
define('CORE_PATH', __DIR__ . '/core/');
define('API_PATH', __DIR__ . '/api/');
define('VIEW_PATH', __DIR__ . '/view/');
define('APP_PATH', __DIR__ . '/app/');
define('DATA_PATH', __DIR__ . '/data/');
define('LOG_DRIVER', 'File');
// autoload
require CORE_PATH . 'Loader.php';
(new Loader)
->addNamespace('core', CORE_PATH)
->addNamespace('api', API_PATH)
->addNamespace('app', APP_PATH)
->register();
try {
$di = Container::instance();
$di->set('route', function() {
return (new Route());
});
$di->set('request', function() {
return (new Request());
});
$di->set('response', function() {
return (new Response());
});
$di->set('view', function() {
return (new View(VIEW_PATH));
});
$di->set('log', function() {
$class = '\\core\\log\drivers\\' . LOG_DRIVER;
return new $class;
});
$app = new Bootstrap($di);
} catch (\Exception $e) {
var_dump($e->getMessage());
}