将域模型的对象存储在PHP会话中是一种很好的做法吗?
这样可以避免查询和重构每个PHP请求的每个PHP对象。
是否有尺寸限制?
答案 0 :(得分:2)
如果您在PHP中使用OOP,您可能希望在每次请求时重建这些对象有多种原因。 总而言之,如您所建议的那样,在会话中存储,加载和反序列化对象之间的性能差异不会太大,或者只是重建它们。
当然,这很大程度上取决于你使用的课程类型。构建一个类通常在性能方面不是很成问题,除非有很多东西需要这样做(数据库查询等)
此外,这样做可能会使您的代码不易理解和/或维护。
是的,有一个大小限制由php.ini
中设置的PHP的最大内存使用量定义所以除非你确切地知道你想在会话中存储什么类,他们做什么以及他们如何互动,否则这个问题并不是真正的问题。
例如,如果您有一个在您的站点上抽象登录用户的类,那么将它的对象存储在PHP会话中可能是个好主意。在大多数其他情况下,它不会。