我有一个简单的字符串数组:类似的串组数组项
$Hand = array("05h", "02h", "03c", "02s", "04h");
这里就是我想用它做:
如果号码出现不止一次,那么组数在数组的开始。所以,我的最终结果将是:
$Hand = array("02h", "02s", "05h", "03c", "04h");
下面是我从其他的答案至今拼凑在一起,但我不知道如何使作品共同努力实现我的目标。
$Hand = array("05h", "02h", "03c", "02s", "04h");
rsort($Hand,SORT_NUMERIC);
print_r ($Hand);
echo "<br>";
function myfunction($Card)
{
return(substr($Card,0,2));
}
$CountedHand = array_count_values(array_map("myfunction",$Hand));
asort($CountedHand);
print_r(array_reverse($CountedHand));
宇智波的评论解决了原有的阵列,但我有一对夫妇更复杂的阵列,它不适合很好地工作。这里有一些其他数组。
$Hand2 = array("05h", "02h", "03c", "02s", "03h");
$Hand3 = array("03s", "02h", "03c", "02s", "03h");
这确实对它们进行排序,但我需要将重复项放置在beginn阵列。我不是简单地寻找一个排序的数组。不过谢谢。 – user3060512