当我存储 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');
答案 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.')';
}