SlimCMS\Helpers\ConfigWorker::init PHP Метод

init() публичный статический Метод

Initialization method and return config array
public static init ( boolean | false $recreateCache = false, array $arConfig = [] ) : array
$recreateCache boolean | false
$arConfig array
Результат array
    public static function init($recreateCache = false, array $arConfig = [])
    {
        self::loadEnvFiles($arConfig);
        if (self::$config == []) {
            self::cacheConfig($recreateCache);
        }
        return self::$config;
    }

Usage Example

Пример #1
0
define('VENDOR_PATH', ROOT_PATH . 'vendor' . DIRECTORY_SEPARATOR);
define('PUBLIC_PATH', ROOT_PATH . 'public' . DIRECTORY_SEPARATOR);
define('RESOURCE_PATH', ROOT_PATH . 'resource' . DIRECTORY_SEPARATOR);
define('MODULE_PATH', ROOT_PATH . 'modules' . DIRECTORY_SEPARATOR);
$classLoader = (require VENDOR_PATH . 'autoload.php');
require SLIM_PATH . 'Helpers' . DIRECTORY_SEPARATOR . 'functions.php';
/**
 * Load the configuration
 */
$config = array('path.app' => APP_PATH, 'path.root' => ROOT_PATH, 'path.slim' => SLIM_PATH, 'path.cache' => CACHE_PATH, 'path.public' => PUBLIC_PATH, 'path.module' => MODULE_PATH, 'path.resource' => RESOURCE_PATH);
$clearCache = false;
if (isset($_REQUEST['clear_cache'])) {
    $clearCache = true;
}
/** include Config files */
$config += ConfigWorker::init($clearCache)->all();
if (!isset($config['slim'])) {
    $container = new Container(['debug' => true, 'use_log' => false, 'determineRouteBeforeAppMiddleware' => true, 'displayErrorDetails' => true]);
    $app = AppFactory::setInstance(new SlimCMS($container));
    ModuleLoader::bootEasyModule(new Modules\SystemInstaller\Module());
    return $app;
}
if ($config['slim']['settings']['debug']) {
    error_reporting(E_ALL ^ E_NOTICE);
}
$container = new Container($config['slim']);
$container->config = $config;
$app = AppFactory::setInstance(new SlimCMS($container));
$container->modules = new SModuleManager($clearCache);
$container->modules->loadModules(MODULE_PATH);
ModuleLoader::bootCore($container->modules->module('Core'));