在foreach里面的Php随机数字

时间:2015-10-19 08:15:40

标签: php sql database random

我明白了:

foreach($users as $user) {

    $num = mt_rand(1, 52);

    ...
}

这会遍历我的数据库中的用户,并为每个用户提供1到52之间的数字。

稍后它会更新db并写入randomed数字。

是否可以为用户提供唯一的号码,以便一个用户获得的号码与另一个用户不同?

2 个答案:

答案 0 :(得分:1)

生成可能数字的列表并将其洗牌;然后轮流分配这些数字......就像洗牌和处理一副纸牌一样

$numbers = range(1,52);
shuffle($numbers);

foreach($users as $user) {
    $num = array_pop($numbers);

    ...
}

答案 1 :(得分:0)

您可以尝试使用时间戳作为参数的PHP uniqid函数。