我想创建一个朋友表,其中包含当前用户的用户ID以及当前用户朋友的其他用户ID。
有点像这样:
userid friends
456 345; 745; 769;
我希望每当当前用户结交朋友时,能够更新[在旧版后插入新值]这个数据。
我见过关于分隔符和内爆/爆炸数据的主题,但我似乎无法确定如何开始这个。
任何想法,任何人?
答案 0 :(得分:1)
重新考虑您的方法并使用一个简单的表格,每个用户ID /朋友对都有一条记录。
userid friends
456 345
456 745
456 769
这样可以轻松地从中选择数据并进行维护。
答案 1 :(得分:0)
如果必须保留现有结构。添加好友:
假设$rs['friends']
包含345; 745; 769;
,新朋友ID为999
// remove trailing `;`
$friend_list = substr($rs['friends'], 0, strlen($rs['friends'])-1);
$friends = explode('; ', $friend_list);
if(in_array(999, $friends)) {
// friend exists
} else {
$friend_list .= '; 999;';
// then save back to DB
}
但是,我建议使用关系表
答案 2 :(得分:0)
好吧,我还在学习。你的所有意见都非常有用。谢谢大家!我会考虑每一个并捕获更多的想法。