blob: b6883610de42cd07132aeee04cc91df996320bbe (
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
namespace ERPHP;
use ERPHP\Router\Router;
class ERPHP
{
public function run(): void
{
// start session
session_start();
// load config
Config::load();
// load plugins
$this->loadPlugins();
// load routes
Hook::addFilter("Router::getRouteFiles", function (array $routeFiles) {
$routeFiles[] = __DIR__ . "/routes.php";
return $routeFiles;
});
Router::getInstance()->run();
}
private function loadPlugins(): void
{
$pluginsDirectory = Config::get("plugins_directory", dirname(__DIR__) . "/plugins");
$pluginDirectories = scandir($pluginsDirectory);
foreach ($pluginDirectories as $directory) {
if ($directory === "." || $directory === "..") {
continue;
}
$composerConfig = file_get_contents("$pluginsDirectory/$directory/composer.json");
include_once "$pluginsDirectory/$directory/index.php";
}
}
}
|