0

我尽量避免global variables,但这次我需要一种方法来临时存储和更改值,而不是将它们写入 HDD 或将它们存储在内存中。

当我进行头脑风暴时,我排除cookies,sessions和.memcachelocal 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-array。你怎么看?足够清洁或有任何解决方法/替代方案?

4

1 回答 1

2

您可以将$_GLOBAL_DUMP数组添加为类中的静态变量。然后,您可以从类本身中访问静态变量,如下所示:

GlobalDump::$_GLOBAL_DUMP
于 2013-09-21T12:13:48.420 回答