/
index.php
93 lines (83 loc) · 2.57 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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
<?php
/**
* @author Vasinsky Igor
* @email igor.vasinsky@gmail.com
* @copyright 2013
*/
header("Content-Type: text/html;charset=utf-8");
session_start();
set_time_limit(0);
/**
* Основной файл конфигурации
*/
include 'config/app.php';
if(DEBUG === true){
error_reporting(-1);
ini_set('display_errors', 1);
}
else{
error_reporting(0);
ini_set('display_errors', 0);
}
/**
* ЧПУ url, восстановление GET параметров
*/
$furl = parse_url($_SERVER['REQUEST_URI']);
$url = explode("/",$furl['path']);
foreach($url as $k=>$v){
if(($k>0 || $k == 1) && $k%2 > 0){
$key = $v;
}
else{
if(isset($key)){
$_GET[$key] = $v;
}
}
}
/**
* Определение посетителя - администратор/посетитель
*/
$_SESSION['fw'][INDEX_SESSION_ADMIN] = isset($_SESSION['fw'][INDEX_SESSION_ADMIN])
? $_SESSION['fw'][INDEX_SESSION_ADMIN]
: false;
/**
* Автозагрузка классов из папки classes
* Остальные классы подгружаются в файле config/route.php
*/
spl_autoload_register(function ($class) {
if(!preg_match("#Model#i", $class) && !preg_match("#Controller#", $class)){
if(file_exists('classes/' . $class . '.class.php'))
include 'classes/' . $class . '.class.php';
}
});
/**
* Выход из админки
*/
if(isset($_GET['logout'])){
Route::logout();
}
/**
* Классы, содержащие базовый функционал
*/
try{
Files::load(DIR.'/'.PATH.'classes/BaseController.class.php');
Files::load(DIR.'/'.PATH.'classes/BaseModel.class.php');
}
catch(Exception $e){
echo $e->getMessage().'<br/>';
}
/**
* Подключения файлов конфигураций
*/
try{
Files::load(CONF.'/mysqli.php');
Files::load(CONF.'/route.php');
}
catch(Exception $e){
echo $e->getMessage().'<br/>';
}
/**
* Очистка хранилища данных
*/
Bufer::clear();
?>