【发布时间】:2011-07-26 09:22:24
【问题描述】:
这可能是一个菜鸟问题,所以请善待。
我正在尝试在昂贵的“活动”对象上实现缓存。在构造函数中,我首先检查缓存以查看此 Activity 实例是否已存在。如果没有,我会执行所有查询来构建对象,对其进行序列化并将其保存到缓存中。下次我进来的时候,我检查缓存,我的对象在那里,所以我反序列化它。现在是我的问题,如何将该对象放入当前对象$this?我不能只说 "$this = unserialize($row[0]);" 失败并显示错误消息“无法在 ActivityClass.php 中重新分配 $this”。我错过了什么?
非常感谢! 迈克
【问题讨论】:
-
所以基本上你想将当前对象与你正在缓存的对象“合并”?
-
你不能那样做。通常,您会在缓存中检查一个对象是否可以在 自己创建一个对象之前在与目标对象本身不同的上下文中被拉出。当然,您可以只定义一个方法来转移昂贵的属性。
标签: php serialization object constructor