我使用了一些php库,并生成了类
的元素 $elnew = new LibClass();
我想将此变量保存到缓存中。 如果我这样做
$elem = $cache->getItem($ig_name);
if (!$elem->isHit()) {
$elem->set($elnew);
$cache->save($ig);
}
$elem->isHit()
总是假的。我检查了缓存如何使用字符串 - 一切正常。
此外,我无法对这个对象进行重新分析/取消分析,因为它说
不允许序列化'关闭'
并且无法修改LibClass
如何将$elnew
保存到缓存中? symfony组件的任何变种?或者也许其他的lib可以帮助我?
答案 0 :(得分:1)
不允许序列化'关闭'
您可以使用PHP SuperClosure library来摆脱这种情况。
您还可以尝试其他内存存储,例如 Redis 或 Memcache 来缓存您的对象。请参阅此resolved stackoverflow question。