本文整理汇总了PHP中Environment::getName方法的典型用法代码示例。如果您正苦于以下问题:PHP Environment::getName方法的具体用法?PHP Environment::getName怎么用?PHP Environment::getName使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Environment
的用法示例。
在下文中一共展示了Environment::getName方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: load
/**
* merges config files of each module imported via config.ini[modules] to one file and loads it
* considering current environment [dev, production, ...] - separate config file for each
* uses Nette/Cache for invalidation when one (or more) of config files changed
*
* @param string|null filepath
* @return Config
*/
public static function load($baseConfigFile = null)
{
if ($baseConfigFile === null) {
$baseConfigFile = Environment::expand(Environment::getConfigurator()->defaultConfigFile);
}
$envName = Environment::getName();
Environment::setVariable('tempDir', VAR_DIR . '/cache');
$cache = Environment::getCache('config');
$key = "config[{$envName}]";
if (!isset($cache[$key])) {
// najviac casu zabera load, tak az tu, ked ho je treba
$appConfig = Environment::loadConfig($baseConfigFile);
$configs = array(Config::fromFile($baseConfigFile, $envName)->toArray());
$configPaths = array($baseConfigFile);
foreach ($appConfig->modules as $c) {
$configPaths[] = $path = MODULES_DIR . "/{$c}Module/config.ini";
if (file_exists($path)) {
$configs[] = Config::fromFile($path, $envName)->toArray();
}
}
$arrayConfig = call_user_func_array('array_merge_recursive', $configs);
$cache->save($key, $arrayConfig, array('files' => $configPaths));
}
return Environment::loadConfig(new Config($cache[$key]));
}
示例2: loadConfig
/**
* Loads global configuration from file and process it.
* @param string|Config file name or Config object
* @return Config
*/
public function loadConfig($file)
{
$name = Environment::getName();
if ($file instanceof Config) {
$config = $file;
$file = NULL;
} else {
if ($file === NULL) {
$file = $this->defaultConfigFile;
}
$file = Environment::expand($file);
$config = Config::fromFile($file, $name, 0);
}
// process environment variables
if ($config->variable instanceof Config) {
foreach ($config->variable as $key => $value) {
Environment::setVariable($key, $value);
}
}
$config->expand();
// process services
$runServices = array();
$locator = Environment::getServiceLocator();
if ($config->service instanceof Config) {
foreach ($config->service as $key => $value) {
$key = strtr($key, '-', '\\');
// limited INI chars
if (is_string($value)) {
$locator->removeService($key);
$locator->addService($key, $value);
} else {
if ($value->factory) {
$locator->removeService($key);
$locator->addService($key, $value->factory, isset($value->singleton) ? $value->singleton : TRUE, (array) $value->option);
}
if ($value->run) {
$runServices[] = $key;
}
}
}
}
// process ini settings
if (!$config->php) {
// backcompatibility
$config->php = $config->set;
unset($config->set);
}
if ($config->php instanceof Config) {
if (PATH_SEPARATOR !== ';' && isset($config->php->include_path)) {
$config->php->include_path = str_replace(';', PATH_SEPARATOR, $config->php->include_path);
}
foreach ($config->php as $key => $value) {
// flatten INI dots
if ($value instanceof Config) {
unset($config->php->{$key});
foreach ($value as $k => $v) {
$config->php->{"{$key}.{$k}"} = $v;
}
}
}
foreach ($config->php as $key => $value) {
$key = strtr($key, '-', '.');
// backcompatibility
if (!is_scalar($value)) {
throw new InvalidStateException("Configuration value for directive '{$key}' is not scalar.");
}
if ($key === 'date.timezone') {
// PHP bug #47466
date_default_timezone_set($value);
}
if (function_exists('ini_set')) {
ini_set($key, $value);
} else {
switch ($key) {
case 'include_path':
set_include_path($value);
break;
case 'iconv.internal_encoding':
iconv_set_encoding('internal_encoding', $value);
break;
case 'mbstring.internal_encoding':
mb_internal_encoding($value);
break;
case 'date.timezone':
date_default_timezone_set($value);
break;
case 'error_reporting':
error_reporting($value);
break;
case 'ignore_user_abort':
ignore_user_abort($value);
break;
case 'max_execution_time':
set_time_limit($value);
break;
//.........这里部分代码省略.........
示例3: loadConfig
/**
* Loads global configuration from file and process it.
* @param string|Nette\Config\Config file name or Config object
* @param bool
* @return Nette\Config\Config
*/
public function loadConfig($file, $useCache)
{
if ($useCache === NULL) {
$useCache = Environment::isLive();
}
$cache = $useCache && $this->cacheKey ? Environment::getCache('Nette.Environment') : NULL;
$name = Environment::getName();
$cacheKey = Environment::expand($this->cacheKey);
if (isset($cache[$cacheKey])) {
Environment::swapState($cache[$cacheKey]);
$config = Environment::getConfig();
} else {
if ($file instanceof Config) {
$config = $file;
$file = NULL;
} else {
if ($file === NULL) {
$file = $this->defaultConfigFile;
}
$file = Environment::expand($file);
$config = Config::fromFile($file, $name, 0);
}
// process environment variables
if ($config->variable instanceof Config) {
foreach ($config->variable as $key => $value) {
Environment::setVariable($key, $value);
}
}
if (PATH_SEPARATOR !== ';' && isset($config->set->include_path)) {
$config->set->include_path = str_replace(';', PATH_SEPARATOR, $config->set->include_path);
}
$config->expand();
$config->setReadOnly();
// process services
$locator = Environment::getServiceLocator();
if ($config->service instanceof Config) {
foreach ($config->service as $key => $value) {
$locator->addService($value, strtr($key, '-', '\\'));
}
}
// save cache
if ($cache) {
$state = Environment::swapState(NULL);
$state[0] = $config;
// TODO: better!
$cache->save($cacheKey, $state, array(Cache::FILES => $file));
}
}
// check temporary directory - TODO: discuss
/*
$dir = Environment::getVariable('tempDir');
if ($dir && !(is_dir($dir) && is_writable($dir))) {
trigger_error("Temporary directory '$dir' is not writable", E_USER_NOTICE);
}
*/
// process ini settings
if ($config->set instanceof Config) {
foreach ($config->set as $key => $value) {
$key = strtr($key, '-', '.');
if (function_exists('ini_set')) {
ini_set($key, $value);
} else {
switch ($key) {
case 'include_path':
set_include_path($value);
break;
case 'iconv.internal_encoding':
iconv_set_encoding('internal_encoding', $value);
break;
case 'mbstring.internal_encoding':
mb_internal_encoding($value);
break;
case 'date.timezone':
date_default_timezone_set($value);
break;
case 'error_reporting':
error_reporting($value);
break;
case 'ignore_user_abort':
ignore_user_abort($value);
break;
case 'max_execution_time':
set_time_limit($value);
break;
default:
throw new NotSupportedException('Required function ini_set() is disabled.');
}
}
}
}
// define constants
if ($config->const instanceof Config) {
foreach ($config->const as $key => $value) {
define($key, $value);
//.........这里部分代码省略.........
示例4: addEnvironment
/**
* @param \FlameCore\Seabreeze\Manifest\Environment $environment
*/
public function addEnvironment(Environment $environment)
{
$name = $environment->getName();
$this->environments[$name] = $environment;
}
示例5: loadConfig
function loadConfig($file)
{
$name = Environment::getName();
if ($file instanceof Config) {
$config = $file;
$file = NULL;
} else {
if ($file === NULL) {
$file = $this->defaultConfigFile;
}
$file = Environment::expand($file);
$config = Config::fromFile($file, $name);
}
if ($config->variable instanceof Config) {
foreach ($config->variable as $key => $value) {
Environment::setVariable($key, $value);
}
}
$iterator = new RecursiveIteratorIterator($config);
foreach ($iterator as $key => $value) {
$tmp = $iterator->getDepth() ? $iterator->getSubIterator($iterator->getDepth() - 1)->current() : $config;
$tmp[$key] = Environment::expand($value);
}
$runServices = array();
$locator = Environment::getServiceLocator();
if ($config->service instanceof Config) {
foreach ($config->service as $key => $value) {
$key = strtr($key, '-', '\\');
if (is_string($value)) {
$locator->removeService($key);
$locator->addService($key, $value);
} else {
if ($value->factory) {
$locator->removeService($key);
$locator->addService($key, $value->factory, isset($value->singleton) ? $value->singleton : TRUE, (array) $value->option);
}
if ($value->run) {
$runServices[] = $key;
}
}
}
}
if (!$config->php) {
$config->php = $config->set;
unset($config->set);
}
if ($config->php instanceof Config) {
if (PATH_SEPARATOR !== ';' && isset($config->php->include_path)) {
$config->php->include_path = str_replace(';', PATH_SEPARATOR, $config->php->include_path);
}
foreach (clone $config->php as $key => $value) {
if ($value instanceof Config) {
unset($config->php->{$key});
foreach ($value as $k => $v) {
$config->php->{"{$key}.{$k}"} = $v;
}
}
}
foreach ($config->php as $key => $value) {
$key = strtr($key, '-', '.');
if (!is_scalar($value)) {
throw new InvalidStateException("Configuration value for directive '{$key}' is not scalar.");
}
if ($key === 'date.timezone') {
date_default_timezone_set($value);
}
if (function_exists('ini_set')) {
ini_set($key, $value);
} else {
switch ($key) {
case 'include_path':
set_include_path($value);
break;
case 'iconv.internal_encoding':
iconv_set_encoding('internal_encoding', $value);
break;
case 'mbstring.internal_encoding':
mb_internal_encoding($value);
break;
case 'date.timezone':
date_default_timezone_set($value);
break;
case 'error_reporting':
error_reporting($value);
break;
case 'ignore_user_abort':
ignore_user_abort($value);
break;
case 'max_execution_time':
set_time_limit($value);
break;
default:
if (ini_get($key) != $value) {
throw new NotSupportedException('Required function ini_set() is disabled.');
}
}
}
}
}
if ($config->const instanceof Config) {
//.........这里部分代码省略.........
示例6: loadConfig
/**
* Loads global configuration from file and process it.
* @param string|Nette\Config\Config file name or Config object
* @return Config
*/
public function loadConfig($file)
{
$name = Environment::getName();
if ($file instanceof Config) {
$config = $file;
$file = NULL;
} else {
if ($file === NULL) {
$file = $this->defaultConfigFile;
}
$file = Environment::expand($file);
$config = Config::fromFile($file, $name, 0);
}
// process environment variables
if ($config->variable instanceof Config) {
foreach ($config->variable as $key => $value) {
Environment::setVariable($key, $value);
}
}
$config->expand();
// process services
$locator = Environment::getServiceLocator();
if ($config->service instanceof Config) {
foreach ($config->service as $key => $value) {
$locator->addService($value, strtr($key, '-', '\\'));
}
}
// check temporary directory - TODO: discuss
/*
$dir = Environment::getVariable('tempDir');
if ($dir && !(is_dir($dir) && is_writable($dir))) {
trigger_error("Temporary directory '$dir' is not writable", E_USER_NOTICE);
}
*/
// process ini settings
if ($config->set instanceof Config) {
if (PATH_SEPARATOR !== ';' && isset($config->set->include_path)) {
$config->set->include_path = str_replace(';', PATH_SEPARATOR, $config->set->include_path);
}
foreach ($config->set as $key => $value) {
$key = strtr($key, '-', '.');
// old INI compatibility
if (!is_scalar($value)) {
throw new InvalidStateException("Configuration value for directive '{$key}' is not scalar.");
}
if (function_exists('ini_set')) {
ini_set($key, $value);
} else {
switch ($key) {
case 'include_path':
set_include_path($value);
break;
case 'iconv.internal_encoding':
iconv_set_encoding('internal_encoding', $value);
break;
case 'mbstring.internal_encoding':
mb_internal_encoding($value);
break;
case 'date.timezone':
date_default_timezone_set($value);
break;
case 'error_reporting':
error_reporting($value);
break;
case 'ignore_user_abort':
ignore_user_abort($value);
break;
case 'max_execution_time':
set_time_limit($value);
break;
default:
if (ini_get($key) != $value) {
// intentionally ==
throw new NotSupportedException('Required function ini_set() is disabled.');
}
}
}
}
}
// define constants
if ($config->const instanceof Config) {
foreach ($config->const as $key => $value) {
define($key, $value);
}
}
// set modes
if (isset($config->mode)) {
foreach ($config->mode as $mode => $state) {
Environment::setMode($mode, $state);
}
}
$config->setReadOnly();
return $config;
}
示例7: beforeRender
protected function beforeRender()
{
echo $this->formatOutput("Environment name set to '" . Environment::getName() . "'");
}
示例8: catch
<h1>Nette\Environment name test</h1>
<pre>
<?php
require_once '../../Nette/loader.php';
/*use Nette\Debug;*/
/*use Nette\Environment;*/
//define('ENVIRONMENT', 'lab');
echo "Name:\n";
Debug::dump(Environment::getName());
try {
echo "Setting name:\n";
Environment::setName('lab2');
Debug::dump(Environment::getName());
} catch (Exception $e) {
echo get_class($e), ': ', $e->getMessage(), "\n\n";
}