示例#1
0
<?php

$injector = new \Auryn\Provider();
$injector->alias('Http\\Response', 'Http\\HttpResponse');
$injector->share('Http\\HttpRequest');
$injector->define('Http\\HttpRequest', [':get' => $_GET, ':post' => $_POST, ':cookies' => $_COOKIE, ':files' => $_FILES, ':server' => $_SERVER]);
$injector->alias('Http\\Request', 'Http\\HttpRequest');
$injector->share('Http\\HttpResponse');
$injector->define('Mustache_Engine', [':options' => ['loader' => new Mustache_Loader_FilesystemLoader(dirname(__DIR__) . '/templates', ['extension' => '.html'])]]);
$injector->delegate('Twig_Environment', function () use($injector) {
    $loader = new Twig_Loader_Filesystem(dirname(__DIR__) . '/templates');
    $twig = new Twig_Environment($loader);
    return $twig;
});
$injector->alias('Example\\Template\\Renderer', 'Example\\Template\\TwigRenderer');
$injector->alias('Example\\Template\\FrontendRenderer', 'Example\\Template\\FrontendTwigRenderer');
$injector->define('Example\\Page\\FilePageReader', [':pageFolder' => __DIR__ . '/../pages']);
$injector->alias('Example\\Page\\PageReader', 'Example\\Page\\FilePageReader');
$injector->share('Example\\Page\\FilePageReader');
$injector->alias('Example\\Menu\\MenuReader', 'Example\\Menu\\ArrayMenuReader');
$injector->share('Example\\Menu\\FileMenuReader');
return $injector;
示例#2
0
文件: index.php 项目: 4d47/php-start
<?php

chdir(dirname(__DIR__));
if (php_sapi_name() === 'cli-server' && is_file(dirname(__FILE__) . $_SERVER['REQUEST_URI'])) {
    return false;
}
# setup autoloading
require 'vendor/autoload.php';
# load configs
$config = array_replace_recursive(require 'config-defaults.php', file_exists('config.php') ? require 'config.php' : array());
# wireup dependencies
$injector = new Auryn\Provider();
foreach ($config['definitions'] as $className => $params) {
    $injector->define($className, $params);
}
# initialize locale
// putenv('LC_ALL=' . $config['ui']['locale']);
// setlocale(LC_ALL, $config['ui']['locale']);
// bindtextdomain('messages', 'locales');
// textdomain('messages');
# handle request
\Http\Resource::handle($config['resources'], array($injector, 'make'));