PHP如何跟踪创建的对象?
这可能是一个愚蠢的问题,但我不是来自OOP背景,虽然我正在阅读和学习,但我仍然在努力学习一些概念.
现在我正在使用PHP 5.3并使用几个不同的对象类设计一个相当简单的登录:定义用户的用户.启动和维护会话数据的会话以及是否有人登录,以及执行查询的数据库. 因此,当我的脚本运行时,我的会话对象被实例化,等等……这是我的问题.当我从一个页面移动到下一个页面时,如何跟踪该对象?或者更确切地说,我的问题是PHP如何知道与我的登录相关的对象是我的,而不是登录该网站的其他人? 我知道如果我是以非OOP方式进行此操作,我只需检查每个页面上的会话cookie并以这种方式检查我的数据,这对我的大脑来说可以处理.但是,跟踪对象数据的位置和方式. 例如: 正如我在开始时说的那样,这可能是一个非常基本的基础问题,但我还没有得到我的时刻,我可能会回到更简单的PHP. 解决方法
会话数据(即$_SESSION中的所有数据)默认序列化并存储在请求之间的文件中.调用session_start()时,数据会自动反序列化.
从PHP manual on Session Handling(强调我的):
请求之间的内存中没有任何内容. PHP具有无共享体系结构,这意味着除非您使用专用缓存机制,否则将在每个请求上重新创建所有对象. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |