我目前正在编写一个完整的应用程序。当然,最重要的功能之一是用户管理。我已经完全想到了这一点,但我仍然不确定一个主题。
用户类应该包含什么,不应该包含什么?
我至少将 user_id 和用户名保存在 User 对象中似乎是合乎逻辑的。由于,我会经常需要这个。但是诸如电子邮件、地址、真实姓名等信息呢?您是否也将这些信息放在 User 对象中?
我正在考虑这样做:我将 user_id 和用户名保存在对象本身中,所以我可以使用方法 getUserId() 和 getUsername() 访问它。这个方法,令人惊讶的是,将返回 $this->userId 和 $this->username。
关于其他信息,例如地址,我正在考虑添加方法。但我不会将此信息存储在实例变量中。就像 getAddress() 方法会调用 UserMapper 一样,我还将在其中创建一个方法来获取地址。
<?php
//UserMapper
public function getAdress() {
$this->database->query('SELECT adress FROM users WHERE user_id = ?', array($this->getUserId));
return $database('adress');
}
//User
public function getAdress() {
return $this->userMapper->getAdress();
}
?>
或者我应该为这些信息创建另一个类?