[英]Split the array values if the values are same
我有一个具有用户集的PHP数组。 每个用户都属于一个团队。 该数组如下所示。
$ Array = ARRAY('User1','User2','User3','User4','User5');
我需要得出以下逻辑。
如果“ User1”和“ User2”属于一个名为“ Team1”的团队,而其他User具有不同的唯一团队,则应按以下顺序对阵列进行重新排序。
$ Array = ARRAY('User1','User3','User4','User5','User2');
如果“ User1”和“ User2”属于同一个名为“ Team1”的团队,而“ User3”和“ User4”属于同一个名为“ Team2”的团队,则应按以下顺序重新排列数组。
$ Array = ARRAY('User1','User3','User5','User4','User2');
数字是用户动态的,任何用户都可以拥有任何团队。 目的是最大程度地避免用户在随后的位置来自同一团队。 最好让用户与同一团队的成员保持联系。
我尝试了很多方法,但是没有任何效果。 请帮助我达到这个逻辑。 请让我知道是否有人需要更多信息。
谢谢拉姆
目前还不清楚您的目标是什么。 如果User1 + 2和User3 + 4 + 5在同一组中(我假设:3,1、4、2、5),该怎么办? 当User2 + 3 + 4 + 5在同一组中时,任何例程都会失败。
目标“避免用户在随后的位置来自同一团队”的一种方法可能是:
为组创建阵列并收集其用户。 用用户数最多的组中的第一个用户填充新的用户组,然后从组数组中删除该用户。 然后,将组中的第一个用户与当前最多的用户添加到用户数组中,但最后使用的组除外。 等等。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.