我尽量避免global variables
,但这次我需要一种临时存储和更改值的方法,而不是将它们写在硬盘上或将它们存储在内存中。
当我进行头脑风暴时,我会排除cookies
,sessions
,memcache
和local files
。
这是我的简单想法:
$_GLOBAL_DUMP = array();
class GlobalDump {
public static function set($key, $value) {
global $_GLOBAL_DUMP;
$_GLOBAL_DUMP[$key] = $value;
}
public static function get($key) {
global $_GLOBAL_DUMP;
return $_GLOBAL_DUMP[$key];
}
}
我可以像
一样使用它GlobalDump::set("any_key", "my name is foo"); // foo.php
GlobalDump::get("any_key", "my name is bar"); // bar.php
echo GlobalDump::get("any_key"); // echos "my name is bar"
我不喜欢$_GLOBAL_DUMP
- 数组。你怎么看?足够清洁或任何变通办法/替代方案?
答案 0 :(得分:2)
您可以将$_GLOBAL_DUMP
数组添加为类中的静态变量。然后,您将从类本身中访问静态变量,如下所示:
GlobalDump::$_GLOBAL_DUMP