PHP:全局数组作为临时数据。存储 - 脏还是不?

时间:2013-09-18 15:47:26

标签: php oop design-patterns global-variables global

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

当我进行头脑风暴时,我会排除cookiessessionsmemcachelocal 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 - 数组。你怎么看?足够清洁或任何变通办法/替代方案?

1 个答案:

答案 0 :(得分:2)

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

GlobalDump::$_GLOBAL_DUMP