php memcache的问题用'true'获取值

时间:2014-04-28 06:49:55

标签: php memcached

当我存储 memcache 键“show-errors”的值为true时 使用以下方法调用它返回成功(即true),表示已设置。

$memcacheObj->set("show-errors", true);

但是当我使用以下方法调用获取密钥时,我得到1而不是真正的

$memcacheObj->get($key);

任何人都可以帮助我。我需要获得与 memcache 中存储的值完全相同的值。

我已经交叉验证我的memcached服务器在我的本地系统上运行,使用以下方法返回true。

$this->cacheObj->connect('127.0.0.1', '11211');

1 个答案:

答案 0 :(得分:1)

与您在评论中告知的不同,序列化布尔值TRUE的反序列化值仍然是正确的。 似乎问题不是你的记忆,而是你的检查。

尝试检查天气变量=== true,而不是将其打印出来,然后您就会看到。

在这里some example code向您展示这是如何运作的:

<?php
$peter = true;
$serPeter = serialize($peter);

$unserPeter = unserialize($serPeter);
if($unserPeter === TRUE) {
  echo 'TRUE';
}
elseif($unserPeter === 1) {
  echo '1';
}
else {
  echo '$unserPeter is : ('.$unserPeter.')';
}