Tutorial Extension  1.0.0
SellerDeck Extensions - Tutorial Extension
CConfig.php
1 <?php
2 
3 /**
4  * CConfig.php - Config class (singleton)
5  *
6  * @package SellerDeck Extensions
7  *
8  * @author Péter Erdődi
9  * @copyright © SellerDeck Ltd 2015. All rights reserved.
10  */
11 
12 namespace SDExtension;
13 
14 class CConfig
15  {
16 
17  /**
18  * @var array $m_aContainer Container
19  */
20  private static $m_aContainer = [];
21 
22  /**
23  * add - Add Configuration to Container
24  *
25  * @access public
26  * @param array $aConfig Configuration
27  * @param string $sName Name
28  * @return void
29  */
30  public static function add($aConfig, $sName = null)
31  {
32  if (empty($sName))
33  {
34  $sName = arr_get($aConfig, '@attributes.name', 'unknown');
35  }
36  self::$m_aContainer[$sName] = $aConfig;
37  }
38 
39  /**
40  * get - Get Configuration from Container
41  *
42  * @access public
43  * @param string $sName Name
44  * @param array|string $vDefault Default values
45  * @return void
46  */
47  public static function get($sName = null, $vDefault = [])
48  {
49  if (!empty($sName))
50  {
51  return arr_get(self::$m_aContainer, $sName, $vDefault);
52  }
53  return self::$m_aContainer;
54  }
55 
56  }
static add($aConfig, $sName=null)
Definition: CConfig.php:30