Php $\u会话,用于保存数据是否明智?

Php $\u会话,用于保存数据是否明智?,php,Php,我想知道使用$_SESSION['data']保存已登录用户的信息是否明智 例如: 假设我有一个游戏,我想显示他们的级别/exp/username等,那么目前每个页面加载我都必须调用数据库。。。所以我想知道我是否将它存储在一个会话中,我可以使用一个布尔值来告诉PHP它是否需要重新更新它的数据。。。从而减少MYSQL调用的数量 这是一个明智的想法吗?是否存在我不知道的缺陷?数据库更新之间的竞争如何?您如何知道数据是否不再是最新的?如果这对已登录的用户来说是一个直接的保留数据,允许他在给定时间只登录

我想知道使用$_SESSION['data']保存已登录用户的信息是否明智

例如:

假设我有一个游戏,我想显示他们的级别/exp/username等,那么目前每个页面加载我都必须调用数据库。。。所以我想知道我是否将它存储在一个会话中,我可以使用一个布尔值来告诉PHP它是否需要重新更新它的数据。。。从而减少MYSQL调用的数量


这是一个明智的想法吗?是否存在我不知道的缺陷?

数据库更新之间的竞争如何?您如何知道数据是否不再是最新的?如果这对已登录的用户来说是一个直接的保留数据,允许他在给定时间只登录一次,那么为什么不:-)

如果你在寻找一个替代方案,有一种新的本地存储方式,就是HTML5


每次登录都会更新—每次使用MYSQL更新/delet/insert时,我都会相应地编辑$\u会话。。除非他们有办法摆弄它?是的,这部分很好,但是如果另一个会话(S2)更新了数据:你不会从S1中看到它。你说的另一个会话是什么意思?这真的是理论上的,因为我不知道你的游戏限制。但是假设另一个玩家的行为与我们正在讨论的玩家的数据有关。你不会看到的。我的意思是说,在你的会议之外发生的任何事情都是看不见的。但是也许这是不应该发生的。啊,我明白了-我的$\u会话的想法仅仅是显示输出数据,而不必通过db调用不断刷新。但是$\u会话数据可以由用户从其浏览器编辑吗?这取决于存储的内容以及可容忍的[缺乏]可见性级别。会话也存储在服务器端的某个位置,还有各种其他缓存选项:使用其他人在发明自己的会话之前所做的工作;-)一切都是合法的,只要你知道你在做什么……;)@pst我不知道有任何其他方法来存储数据以减少SQL调用:Psession不是缓存的一种形式从PHP中查看MySQL缓存。