OXID eShop CE  4.10.5
 All Classes Namespaces Files Functions Variables Pages
oxregistry.php
Go to the documentation of this file.
1 <?php
2 
6 class oxRegistry
7 {
8 
14  protected static $_aInstances = array();
15 
25  public static function get($sClassName)
26  {
27  $sClassName = strtolower($sClassName);
28  if (isset(self::$_aInstances[$sClassName])) {
29  return self::$_aInstances[$sClassName];
30  } else {
31  self::$_aInstances[$sClassName] = oxNew($sClassName);
32 
33  return self::$_aInstances[$sClassName];
34  }
35  }
36 
47  public static function set($sClassName, $oInstance)
48  {
49  $sClassName = strtolower($sClassName);
50 
51  if (is_null($oInstance)) {
52  unset(self::$_aInstances[$sClassName]);
53 
54  return;
55  }
56 
57  self::$_aInstances[$sClassName] = $oInstance;
58  }
59 
67  public static function getConfig()
68  {
69  return self::get("oxConfig");
70  }
71 
79  public static function getSession()
80  {
81  return self::get("oxSession");
82  }
83 
91  public static function getLang()
92  {
93  return self::get("oxLang");
94  }
95 
103  public static function getUtils()
104  {
105  return self::get("oxUtils");
106  }
107 
113  public static function getKeys()
114  {
115  return array_keys(self::$_aInstances);
116  }
117 }