Memcached return 未存储

Memcached return not stored

我是 Memcached 的新手,我正在尝试使用此功能在我的应用程序中进行无线编辑配置。

所以我需要存储一些数据,为此我做了:

class Settings
{
    private $_config = array();
    private static $_memcached = null;

    function __construct()
    {
        self::$_memcached = new Memcached();
        self::$_memcached->addServer('127.0.0.1', 11211);

        $file = 'config.php'; //return $config content
        require_once $file;

        $this->_config = $config;

        foreach($config as $item => $value)
        {
            self::$_memcached->add($item, $value);
            echo self::$_memcached->getResultMessage();
        }
    }
}

我遵循了可用文档的说明 here。 不幸的是我得到了这个错误:

NOT STORED

我做错了什么?

正如我在评论中所写。 memcached 中存在一些密钥。然后您尝试再次添加密钥。这就是原因。尝试在添加之前添加检查。它应该是这样的:

foreach ($config as $item => $value) {
    if (!(bool)self::$_memcached->get($item)) {
        self::$_memcached->add($item, $value);
        echo self::$_memcached->getResultMessage();
    }
}