PHP初学者:对象存储在何处以及如何存储?

Phi*_*hil 1 php memory oop web-applications

在用PHP编写的应用程序(例如,社交网络)中,假设有10个用户(已登录)正在浏览该网站.

在PHP代码中,创建了"用户"对象来存储用户数据并将值传递给其他函数和类.

问题:当这10个用户转到user.php,其中有代码创建"user"对象时,这些对象如何在PHP中存储在内存中?他们不冲突吗?每个"用户"对象是唯一存储在内存中还是会被另一个覆盖?

例如,用户首先访问,因此对象"user"包含他/她的数据,但是当用户第二次访问时,内存中的"用户"对象被覆盖,因此当第一个用户调用该对象时,它是检索到的第二个用户数据.

或者,它是独一无二的吗?

我希望将PHP中的对象理解为新手,请解释一下,因为我找到的关于OOP的网页都没有解释这一点.

use*_*291 7

PHP是一个CGI应用程序,这意味着,它是在每个请求上启动和终止的.

  • 客户端向Web服务器发送请求
  • 服务器启动PHP并将请求传递给它
  • PHP为您的脚本分配一块内存
  • 你的脚本正在执行,它创建的所有对象都存储在那块内存中
  • 你的脚本生成一些html,这个html被发送到客户端
  • 内存被释放,PHP被停止

如果您同时有10个客户端请求,则将启动10个php副本,并将使用10个独立的内存块.所以,不,来自不同请求的对象不会干扰.

(注意:这个解释是故意简化的,实际上有不同的php设置和持久性选项).