当前位置: 首页>>代码示例>>PHP>>正文


PHP Config::merge方法代码示例

本文整理汇总了PHP中Zend\Config\Config::merge方法的典型用法代码示例。如果您正苦于以下问题:PHP Config::merge方法的具体用法?PHP Config::merge怎么用?PHP Config::merge使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Zend\Config\Config的用法示例。


在下文中一共展示了Config::merge方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: buildHydrator

 protected function buildHydrator($product, $direction)
 {
     $this->assertOptionsValid();
     $config = $this->options->getConfig();
     $class = $this->options->getClass();
     $hydrator = new ClassMethods();
     if (!isset($config[$this->options->getClass()][$product])) {
         return $hydrator;
     }
     $tmp = new Config(array());
     if (isset($config[$class]['*'])) {
         $tmp = new Config($config[$class]['*']);
     }
     if (isset($config[$class][$product])) {
         $productConfig = new Config($config[$class][$product]);
         $tmp = $productConfig->merge($tmp);
     }
     $config = $tmp['shared'];
     if (isset($tmp[$direction])) {
         $config->merge($tmp[$direction]);
     }
     $config = $config->toArray();
     if (!empty($config['map'])) {
         $hydrator->setNamingStrategy(new ArrayMapNamingStrategy($config['map']));
     }
     if (!empty($config['strategy'])) {
         foreach ($config['strategy'] as $name => $strategyCallback) {
             $hydrator->addStrategy($name, $strategyCallback());
         }
     }
     if (!empty($config['options'])) {
         $this->options->setFromArray($config['options']);
     }
     return $hydrator;
 }
开发者ID:pay4later,项目名称:php-task,代码行数:35,代码来源:AbstractClassAdapter.php

示例2: _getConfig

 protected function _getConfig()
 {
     $config = new Config(include 'config/module.config.global.php');
     if (file_exists('config/module.config.local.php')) {
         $config->merge(new Config(include 'config/module.config.local.php'));
     }
     return $config['jvandemo_ogone'];
 }
开发者ID:jvandemo,项目名称:ogone,代码行数:8,代码来源:FormTest.php

示例3: setConfig

 /**
  * Sets configuration for the command, allows to override config in runtime
  *
  * @param Config $config
  * @param bool $merge
  */
 public function setConfig(Config $config, $merge = true)
 {
     if ($this->config && $merge) {
         $this->config->merge($config);
     } else {
         $this->config = $config;
     }
 }
开发者ID:fhferreira,项目名称:phystrix,代码行数:14,代码来源:AbstractCommand.php

示例4: update

 /**
  * Обновить запись.
  * Метод PUT для RESTfull.
  */
 public function update($id, $data)
 {
     $result = new JsonModel();
     $lincutConfigPath = $_SERVER["DOCUMENT_ROOT"] . "/lincut.config.php";
     // Создаем в памяти новый конфигурационный файл с новыми настройками
     $lincutConfigNew = new Config(array(), true);
     $lincutConfigNew->lincut = array();
     $lincutConfigNew->lincut->wkhtmltopdf = array();
     $lincutConfigNew->lincut->restriction = array();
     if (array_key_exists("wkhtmltopdf_path", $data)) {
         $lincutConfigNew->lincut->wkhtmltopdf->path = $data["wkhtmltopdf_path"];
     }
     if (array_key_exists("restriction_mode", $data)) {
         $lincutConfigNew->lincut->restriction->mode = $data["restriction_mode"];
     }
     if (array_key_exists("restriction_up_time", $data)) {
         $lincutConfigNew->lincut->restriction->uptime = $data["restriction_up_time"];
     }
     if (array_key_exists("restriction_up_count", $data)) {
         $lincutConfigNew->lincut->restriction->upcount = $data["restriction_up_count"];
     }
     if (array_key_exists("saw", $data)) {
         $lincutConfigNew->lincut->saw = $data["saw"];
     }
     if (array_key_exists("waste", $data)) {
         $lincutConfigNew->lincut->waste = $data["waste"];
     }
     $dbwcad = "db/wcad";
     $lincutConfigNew->db = array();
     $lincutConfigNew->db->adapters = array();
     $lincutConfigNew->db->adapters->{$dbwcad} = array();
     if (array_key_exists("db_wcad_servername", $data)) {
         $lincutConfigNew->db->adapters->{$dbwcad}->servername = $data["db_wcad_servername"];
     }
     if (array_key_exists("db_wcad_database", $data)) {
         $lincutConfigNew->db->adapters->{$dbwcad}->database = $data["db_wcad_database"];
     }
     if (array_key_exists("db_wcad_username", $data)) {
         $lincutConfigNew->db->adapters->{$dbwcad}->username = $data["db_wcad_username"];
     }
     if (array_key_exists("db_wcad_password", $data)) {
         $lincutConfigNew->db->adapters->{$dbwcad}->password = $data["db_wcad_password"];
     }
     // Открываем существующий файл настроек, если он имеется в наличии
     $lincutConfig = array();
     if (is_file($lincutConfigPath)) {
         $lincutConfig = \Zend\Config\Factory::fromFile($lincutConfigPath);
     }
     $lincutConfig = new Config($lincutConfig, true);
     $lincutConfig->merge($lincutConfigNew);
     // Сохраняем настройки
     $writer = new \Zend\Config\Writer\PhpArray();
     $writer->toFile($lincutConfigPath, $lincutConfig);
     // Возвращаем результат операции
     $result->success = true;
     return $result;
 }
开发者ID:khusamov-dump,项目名称:dump,代码行数:61,代码来源:ConfigController.php

示例5: collect

 /**
  * @inheritDoc
  */
 public function collect($handle, $area = null)
 {
     $areas = [LayoutUpdaterInterface::AREA_GLOBAL, $area];
     $structure = new Config([], true);
     foreach ($areas as $area) {
         $config = isset($this->config[$area][$handle]) ? (array) $this->config[$area][$handle] : [];
         $structure->merge(new Config($config, true));
     }
     return $structure;
 }
开发者ID:hummer2k,项目名称:conlayout,代码行数:13,代码来源:ConfigCollector.php

示例6: init

 /**
  * Merges the app config with the siteaccess config
  */
 public function init()
 {
     // Add siteaccess specific config
     $configHandler = new Config($this->serviceManager->get('config'));
     $configHandler->merge($this->addConfig());
     $this->serviceManager->setAllowOverride(true);
     $this->serviceManager->setService('config', $configHandler->toArray());
     $this->serviceManager->setAllowOverride(false);
     // not needed I think
     #$this->baseXMSServices->setService( 'siteaccess', $this );
 }
开发者ID:pkamps,项目名称:basexms,代码行数:14,代码来源:SiteAccess.php

示例7: getDocumentManager

 /**
  * @return DocumentManager
  */
 public function getDocumentManager()
 {
     $factory = new DocumentManagerFactory();
     $sm = Bootstrap::getServiceManager();
     $sm->setAllowOverride(true);
     $config = $sm->get('Config');
     $c = new Config(['eoko' => ['odm' => ['hydrator' => ['class' => 'Zend\\Stdlib\\Hydrator\\ClassMethods', 'strategies' => ['Eoko\\ODM\\Metadata\\Annotation\\DateTime' => new DateTimeFormatterStrategy()]]]]]);
     $c->merge(new Config($config));
     $sm->setService('Config', $c->toArray());
     return $factory->createService($sm);
 }
开发者ID:eoko,项目名称:odm-documentmanager,代码行数:14,代码来源:BaseTestCase.php

示例8: getFileAsConfig

 /**
  * Get result from cache or read from php file
  *
  * @param string $file path to file and filename
  * @param string $key template file ident
  * @param ServiceLocatorInterface $sl
  */
 protected function getFileAsConfig($file, $key, $sl)
 {
     $cache = $sl->get(static::CONTENTINUM_CACHE);
     if (!($result = $cache->getItem($key))) {
         $result = new Config(include $file);
         if (is_file(CON_ROOT_PATH . '/data/opt/customer.config.php')) {
             $result->merge(new Config(include CON_ROOT_PATH . '/data/opt/customer.config.php'));
         }
         $cache->setItem($key, $result);
     }
     return $result;
 }
开发者ID:jochum-mediaservices,项目名称:contentinum5.5,代码行数:19,代码来源:CustomerServiceFactory.php

示例9: fetchHandle

 /**
  * @param string $handle
  */
 private function fetchHandle($handle)
 {
     foreach ($this->collectors->getIterator() as $collector) {
         $tempStructure = $collector->collect($handle, $this->getArea());
         if ($includes = $tempStructure->get(self::INSTRUCTION_INCLUDE)) {
             foreach ($includes as $include) {
                 $this->fetchHandle($include);
             }
         }
         $this->layoutStructure->merge($tempStructure);
     }
 }
开发者ID:hummer2k,项目名称:conlayout,代码行数:15,代码来源:LayoutUpdater.php

示例10: setupConfig

 public static function setupConfig(Container $container)
 {
     $container->add('config', function () {
         $DS = DIRECTORY_SEPARATOR;
         $confPath = ROOT . $DS . 'conf' . $DS;
         $reader = new Ini();
         $config = new Config($reader->fromFile($confPath . 'default.ini'));
         if (file_exists($confPath . 'local.ini')) {
             $config->merge(new Config($reader->fromFile($confPath . 'local.ini')));
         }
         return $config;
     }, true);
 }
开发者ID:jackblackjack,项目名称:sociochat,代码行数:13,代码来源:DIBuilder.php

示例11: getCommandConfig

 /**
  * Gets the config for given command key
  *
  * @param string $commandKey
  * @return Config
  */
 protected function getCommandConfig($commandKey)
 {
     if (isset($this->configsPerCommandKey[$commandKey])) {
         return $this->configsPerCommandKey[$commandKey];
     }
     $config = new Config($this->config->get('default')->toArray(), true);
     if ($this->config->__isset($commandKey)) {
         $commandConfig = $this->config->get($commandKey);
         $config->merge($commandConfig);
     }
     $this->configsPerCommandKey[$commandKey] = $config;
     return $config;
 }
开发者ID:odesk,项目名称:phystrix-dashboard,代码行数:19,代码来源:ApcMetricsPoller.php

示例12: generateConfigFile

 private function generateConfigFile(Config $new_config)
 {
     $config_file = 'config/autoload/local.php';
     // If there is a config file at that path, so merge the configuration to it.
     $config = array();
     if (file_exists($config_file)) {
         $config = (include $config_file);
     }
     $reader = new Config($config);
     $reader->merge($new_config);
     $writer = new \Zend\Config\Writer\PhpArray();
     $writer->toFile($config_file, $reader);
 }
开发者ID:lpj0017,项目名称:easypay,代码行数:13,代码来源:APIKeyController.php

示例13: getConfig

 public function getConfig()
 {
     $config = new Config(array());
     if (is_dir(__DIR__ . '/config')) {
         $iterator = new \RegexIterator(new \DirectoryIterator(__DIR__ . '/config'), '#\\.config\\.php$#i');
         foreach ($iterator as $file) {
             /** @var $file \DirectoryIterator */
             if ($file->isReadable()) {
                 $subConf = new Config(include $file->getRealPath());
                 $config->merge($subConf);
             }
         }
     }
     return $config;
 }
开发者ID:skpd,项目名称:profiler-toolbar,代码行数:15,代码来源:Module.php

示例14: getNavigation

 /**
  * @throws \ErrorException
  *
  * @return array
  */
 public function getNavigation()
 {
     try {
         $navigationDefinition = Factory::fromFile($this->rootNavigationFile, true);
     } catch (\Exception $e) {
         $navigationDefinition = new Config([]);
     }
     foreach ($this->navigationSchemaFinder->getSchemaFiles() as $moduleNavigationFile) {
         if (!file_exists($moduleNavigationFile->getPathname())) {
             throw new ErrorException('Navigation-File does not exist: ' . $moduleNavigationFile);
         }
         $configFromFile = Factory::fromFile($moduleNavigationFile->getPathname(), true);
         $navigationDefinition->merge($configFromFile);
     }
     return $navigationDefinition->toArray();
 }
开发者ID:spryker,项目名称:Application,代码行数:21,代码来源:NavigationCollector.php

示例15: getFileAsConfig

 /**
  * Get result from cache or read from php file
  *
  * @param string $file path to file and filename
  * @param string $key template file ident
  * @param ServiceLocatorInterface $sl
  */
 protected function getFileAsConfig($file, $key, $sl)
 {
     $cache = $sl->get(static::CONTENTINUM_CACHE);
     if (!($result = $cache->getItem($key))) {
         $i = 1;
         foreach ($file as $singleFile) {
             if (1 === $i) {
                 $result = new Config(include $singleFile);
             } else {
                 $result->merge(new Config(include $singleFile));
             }
             $i++;
         }
         $cache->setItem($key, $result);
     }
     return $result;
 }
开发者ID:jochum-mediaservices,项目名称:contentinum5.5,代码行数:24,代码来源:RulesServiceFactory.php


注:本文中的Zend\Config\Config::merge方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。