0

我有一个这样的数组

Array
(
    [5] => 0
    [6] => 0
)

键 5 和键 6 是用户 ID。两个键的值 0 是它们拥有的帖子数。

我如何获得帖子最低的用户,如果有超过 1 个用户的帖子相同/最低,随机选择一个。

谢谢

4

2 回答 2

1

您需要的是min()数组中的最小值并从数组array_rand()中获取随机条目。

$yourArr = array(4, 4, 3, 5);

$lowestEntry = min($yourArr);
$duplicateEntries = array_keys($yourArr, $lowestEntry);

echo (count($duplicateEntries) > 1)?$yourArr[array_rand($duplicateEntries, 1)]:$lowestEntry;
于 2013-11-12T07:07:16.093 回答
1

假设你的数组是$arr

$mini = min($arr);
$user = array();
foreach ($arr as $key => $val){
    if ($val == $mini){
        // find the user with minimum value
        $user[] = $key;
    }
}
// print the user with minimum value
echo array_rand($user, 1).' '.$mini;
于 2013-11-12T07:11:14.787 回答