比方說,我有用戶誰可以交朋友彼此,技術上,我如何解決這個問題在PHP中使用DAO?PHP DAO讓用戶交友(技術上)
數據庫:
users | user_friends
- userid | - userid_user1
- username | - userid_user2
PHP用戶對象:
class User
{
private $userid;
private $username;
// getters and setters
}
我應該用這個方法來籠絡用戶:
$u1 = UserDAO::getInstance()->findUserById(1);
$u2 = UserDAO::getInstance()->findUserById(2);
UserDAO::getInstance()->befriendUsers($u1, $u2);
,或者我應該用這個方法:
$u1 = UserDAO::getInstance()->findUserById(1);
$u2 = UserDAO::getInstance()->findUserById(2);
$u1->befriend($u2);
// befriend method would look like this in the User object
public function befriend(User $u)
{
UserDAO::getInstance()->befriend($this, $u);
}
或者也許另一種方式?
正如@MikeSW所說,這不是數據訪問對象的作用。 DAO應該映射應用程序中的對象並將它們保存到數據存儲區(數據庫,文件等)。它不應該包含任何業務邏輯,如友好用戶。 –