(28.12.2010 00:15)
Die Klasse stellt einen globalen Speicher fuer Eigenenschaften zur Verfügung.
Die Klasse funktioniert nur mit PHP >= 5.3.0. Bei älteren Versionen ist die Methode __callStatic() nicht implementiert!
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 |
/** * Die Klasse stellt einen Globalen Speicher fuer Eigenenschaften zur Verfuegung. * Aufruf zum Speichern: Globals::einbeliebigername("ein beliebiger wert"); * Aufruf zum Auslesen: Globals::einbeliebigername(); * Aufruf zum Loeschen: Globals::__unset("einbeliebigername"); * * Die Klasse Funktioniert nur mit PHP >= 5.3.0 * Bei aelteren Versionen ist die Methode __callStatic() nicht implementiert! */ class Globals { /** * Datenspeicher * @var array */ private static $_store = array(); /** * Magische Methode zum Speichern von Eigenschaften * @param String $name * @param mixed $arguments * @return mixed */ public static function __callStatic($name, $arguments) { if(isset($arguments[0])) { self::$_store[$name] = $arguments[0]; return self::$_store[$name]; } elseif(isset(self::$_store[$name])) { return self::$_store[$name]; } else { return null; } } /** * Liefert die Namen aller Eigenschaften als String * @return String */ public static function __toString() { return implode("\n", array_keys(self::$_store)); } /** * Entfernt eine Eigenschaft aus dem Speicher sofern diese vorhanden ist * @param String $name */ public static function __unset($name) { if(isset(self::$_store[$name])) { unset(self::$_store[$name]); } } } |