flash.moe/makai.php

35 lines
1 KiB
PHP

<?php
namespace Makai;
use Index\Environment;
use Index\Data\DbTools;
define('MKI_STARTUP', microtime(true));
define('MKI_ROOT', __DIR__);
define('MKI_DEBUG', is_file(MKI_ROOT . '/.debug'));
define('MKI_DIR_SRC', MKI_ROOT . '/src');
define('MKI_DIR_LIB', MKI_ROOT . '/lib');
define('MKI_DIR_PUB', MKI_ROOT . '/public');
define('MKI_DIR_PAGES', MKI_ROOT . '/pages');
define('MKI_DIR_CONFIG', MKI_ROOT . '/config');
define('MKI_DIR_TEMPLATES', MKI_ROOT . '/tpl');
require_once MKI_ROOT . '/vendor/autoload.php';
Environment::setDebug(MKI_DEBUG);
try {
$cfg = parse_ini_file(MKI_DIR_CONFIG . DIRECTORY_SEPARATOR . 'database.ini');
} catch(\ErrorException $ex) {
$cfg = null;
}
try {
$db = DbTools::create($cfg['dsn'] ?? 'null:');
} catch(\Index\Data\ConnectionFailedException $ex) {
$db = DbTools::create('null:');
}
$db->execute('SET SESSION time_zone = \'+00:00\', sql_mode = \'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION\'');
$ctx = new MakaiContext($db);