Issues (2407)

engine/library/Config.php (1 issue)

1
<?php
2
/* 	Divine CMS - Open source CMS for widespread use.
3
    Copyright (c) 2019 Mykola Burakov ([email protected])
4
5
    See SOURCE.txt for other and additional information.
6
7
    This file is part of Divine CMS.
8
9
    This program is free software: you can redistribute it and/or modify
10
    it under the terms of the GNU General Public License as published by
11
    the Free Software Foundation, either version 3 of the License, or
12
    (at your option) any later version.
13
14
    This program is distributed in the hope that it will be useful,
15
    but WITHOUT ANY WARRANTY; without even the implied warranty of
16
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17
    GNU General Public License for more details.
18
19
    You should have received a copy of the GNU General Public License
20
    along with this program. If not, see <http://www.gnu.org/licenses/>. */
21
22
namespace Divine\Engine\Library;
23
24
class Config
25
{
26
    private $data = array();
27
28
    public function get($key)
0 ignored issues
show
Expected 2 blank lines before function; 1 found
Loading history...
29
    {
30
        return (isset($this->data[$key]) ? $this->data[$key] : null);
31
    }
32
33
    public function set($key, $value)
34
    {
35
        $this->data[$key] = $value;
36
    }
37
38
    public function has($key)
39
    {
40
        return isset($this->data[$key]);
41
    }
42
43
    public function load($filename)
44
    {
45
        $file = $_SERVER['DOCUMENT_ROOT'] . '/engine/config/' . $filename . '.php';
46
47
        if (file_exists($file)) {
48
            $_ = array();
49
50
            require($file);
51
52
            $this->data = array_merge($this->data, $_);
53
        } else {
54
            trigger_error('Error: Could not load config ' . $filename . '!');
55
        }
56
    }
57
}
58