比问一个有明确正确/错误答案的问题更要征求你的意见。
我对 OOPHP 还很陌生,我过去做过一些 OO 编程。我无法理解的是在页面之间共享对象(或更多它们的状态)的最佳方式。
我试图避免将大量数据塞进 $_SESSION 中,而且我也不喜欢在每页更改的表单中发布所有数据的想法。
任何见解将不胜感激。
谢谢 TT
比问一个有明确正确/错误答案的问题更要征求你的意见。
我对 OOPHP 还很陌生,我过去做过一些 OO 编程。我无法理解的是在页面之间共享对象(或更多它们的状态)的最佳方式。
我试图避免将大量数据塞进 $_SESSION 中,而且我也不喜欢在每页更改的表单中发布所有数据的想法。
任何见解将不胜感激。
谢谢 TT
将“大量数据”保存在$_SESSION
. 通过这样做,您根本不会增加传输大小或任何东西,因此您不会像$_SESSION
纯粹的服务器端那样影响客户端。
我试图避免将大量数据塞进 $_SESSION 中,而且我也不喜欢在每页更改的表单中发布所有数据的想法。
如上所述,这不是问题,您不是“在每个页面更改的表单中发布所有数据”,它存储在服务器端的平面文件中,当您重新打开会话时该文件会自动反序列化,并放入$_SESSION
.
如果它$_SESSION
的寿命对你来说足够了,你应该使用它。
如果您需要比 a 更持久的东西$_SESSION
,例如,您需要在用户登录的整个过程中针对用户存储一个对象,您可以考虑在数据库中序列化对象并在页面加载时将它们拉出,或者只是重新创建来自您针对用户存储的值的对象。
如您所知,对象仅存在于页面上的两个 http 请求或单击之间,因此您可以将所需的数据保存在 $_SESSION/$_COOKIE 中,将其发送到 $_POST/$_GET,序列化对象并将其保存在 DB、文本文件中或其他...AFAIK 这些是您使用 PHP 的唯一选择