コード例 #1
0
ファイル: Router.php プロジェクト: darktec/router
 /**
  *
  */
 public static function init()
 {
     $builder = new \DI\ContainerBuilder();
     $builder->setDefinitionCache(new ApcCache());
     $builder->writeProxiesToFile(true, 'tmp/proxies');
     self::$container = $builder->build();
     self::$container->set('routeCollection', new RouteCollection());
 }
コード例 #2
0
<?php

$builder = new \DI\ContainerBuilder();
$builder->addDefinitions(__DIR__ . '/config-test3.php');
$builder->setDefinitionCache(new \Doctrine\Common\Cache\ArrayCache());
$container = $builder->build();
//trigger autoloader
$j = $container->get('J');
unset($j);
$t1 = microtime(true);
for ($i = 0; $i < 10000; $i++) {
    $j = $container->get('J');
}
$t2 = microtime(true);
$results = ['time' => $t2 - $t1, 'files' => count(get_included_files()), 'memory' => memory_get_peak_usage() / 1024 / 1024];
echo json_encode($results);
コード例 #3
0
ファイル: Bootstrap.php プロジェクト: fraym/core
$builder = new \DI\ContainerBuilder();
$builder->useAnnotations(true);
if (\Fraym\Core::ENV_STAGING === ENV || \Fraym\Core::ENV_PRODUCTION === ENV) {
    error_reporting(-1);
    ini_set("display_errors", 0);
    $builder->writeProxiesToFile(true, CACHE_DI_PATH);
    define('GLOBAL_CACHING_ENABLED', true);
    $apcEnabled = (extension_loaded('apc') || extension_loaded('apcu')) && ini_get('apc.enabled');
} else {
    error_reporting(-1);
    ini_set("display_errors", 1);
    define('GLOBAL_CACHING_ENABLED', false);
    $apcEnabled = false;
}
define('APC_ENABLED', $apcEnabled);
if (defined('IMAGE_PROCESSOR') && IMAGE_PROCESSOR === 'Imagick') {
    $builder->addDefinitions(['Imagine' => DI\object('Imagine\\Imagick\\Imagine')]);
} elseif (defined('IMAGE_PROCESSOR') && IMAGE_PROCESSOR === 'Gmagick') {
    $builder->addDefinitions(['Imagine' => DI\object('Imagine\\Gmagick\\Imagine')]);
} else {
    $builder->addDefinitions(['Imagine' => DI\object('Imagine\\Gd\\Imagine')]);
}
$builder->addDefinitions(['db.options' => array('driver' => DB_DRIVER, 'user' => DB_USER, 'password' => DB_PASS, 'host' => DB_HOST, 'dbname' => DB_NAME, 'charset' => DB_CHARSET)]);
if (APC_ENABLED) {
    $cache = new Doctrine\Common\Cache\ApcuCache();
} else {
    $cache = new Doctrine\Common\Cache\ArrayCache();
}
$cache->setNamespace('Fraym_instance_' . FRAYM_INSTANCE);
$builder->setDefinitionCache($cache);
$diContainer = $builder->build();