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();
}
}
我是 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();
}
}