好的,我对 OOP 整体还是很陌生,但我现在已经创建了一些可行的类,并且我正在慢慢掌握 PHP 中 OOP 的各种概念。在我目前正在进行的一个项目中,用户可以注册、登录/注销和上传/删除/评论/评价图像。
目前,当用户登录时,我将他们的大部分信息(我从数据库中检索到的)放在$_SESSION
超全局中。这包括他们的名字、用户名、user_id 等信息。
作为补充,我有一个名为的页面user.functions.php
,其中包含许多与“用户”概念相关的杂项功能,例如权限检查、请求其他用户数据、检查成功登录、注册用户等。
我的问题是我将如何管理这个作为一个User
班级?如果我理解正确,页面上调用的任何内容只存在于该页面上,所以我不必声明一个
new User();
在我需要执行与该用户相关的任务的每个页面上?无论如何,这如何有效?调用如下函数不是更简单:
changeAddress();
代替:
$user = new User();
$user->changeAddress();
user_id
我当前存储在会话中的关键用户数据如何?我是否也会在一个类中迁移该数据并通过 getter 方法检索它?
基本上,我看不到用户对象的概念如何提高整体代码质量,如果用户(本质上是跨页面概念)与仅存在于单个文档范围内的对象相关联?
我在这里想念什么?