如何使用PHP OOP来维护对象状态 不同的页面。
问题是我总是在每个页面上实例化对象。
有一个解决方案,我实例化它一次并保持它 不同页面上的对象。
提前致谢
答案 0 :(得分:9)
在PHP中,几乎所有内容都在每个页面上实例化。如果你想维持状态,你有很多选择:
您使用哪一个取决于诸如数据是全局的,用户特定的等因素以及许多其他因素(例如读取频率,写入频率等)。
所以不可能给你一个明确的答案,因为你想要坚持的性质尚不清楚。如果您担心创建对象的成本,那么,除非真的昂贵,否则不要。在发生问题之前,请不要优化问题。
答案 1 :(得分:2)
您还可以查看对象序列化。您可以在此处找到更多信息。 http://uk.php.net/serialize。这会将您的对象转换为可用于存储到会话数据的格式。一旦您的数据存储在会话中,您就可以在下一个用户页面加载时读取数据并反序列化数据以获取对象!
这是一篇很好的文章,展示了序列化如何允许您的对象跨两个不同的PHP页面使用。 http://www.phpbuilder.com/manual/en/language.oop.serialization.php