0
我试图先按Rank中的数量排序,如果数量相等,则按秩排序数字排序。PHP排序按键中值的出现次数排列多维数组
这听起来很复杂,但这里是伪代码,我在反复等级值的数目设想
- 首先排序数组。
- 如果重复值的数量等于Rank中的值,则按数值排序。
我想它的有点递归看到作为第二部分是在所有的子阵列上执行。
我一直在尝试使用usort,但是我无法得到它,因此请查看数组中重复的rank值的计数。 Multisort似乎也不适合。
例子:
Array ( [0] => Array ( [Rank] => 7 [Suit] => Hearts ) [1] => Array ( [Rank] => 3 [Suit] => Hearts ) [2] => Array ( [Rank] => 6 [Suit] => Spades ) [3] => Array ( [Rank] => 10 [Suit] => Spades ) [4] => Array ( [Rank] => 3 [Suit] => Spades ) [5] => Array ( [Rank] => 6 [Suit] => Hearts ) [6] => Array ( [Rank] => 2 [Suit] => Clubs ) )
根据我的算法
Array ( [0] => Array ( [Rank] => 6 [Suit] => Hearts ) [1] => Array ( [Rank] => 6 [Suit] => Spades ) [2] => Array ( [Rank] => 3 [Suit] => Spades ) [3] => Array ( [Rank] => 3 [Suit] => Hearts ) [4] => Array ( [Rank] => 10 [Suit] => Spades ) [5] => Array ( [Rank] => 7 [Suit] => Hearts ) [6] => Array ( [Rank] => 2 [Suit] => Clubs ) )
谢谢你的回复,我会在第二个测试,但我不能确定,为什么你被起诉末排序? – user3786992
对不起,我以为你也想这样做。我想出了一个更简单的版本,我会在一秒之内编辑我的答案。 –
我认为目前的版本对于你想要完成的事情更加清晰。 –