2015-10-13 58 views
-5

我得到这个:腓的foreach给用户的随机值

foreach($users as $user) { 

     $newcw = mt_rand(1, 52); 
     $set = array('val' => $newcw, 
} 

这主要通过用户数据库中运行,并为每个用户提供一个随机值1和52

之间

怎么可能给每2个用户一个值?

+0

连续用户? –

回答

0

这应该工作。

$index = $value = 0; 
foreach($users as $user) { 
    if ($index % 2 == 0) 
     $newcw = $value = mt_rand(1, 52); 
    else 
     $newcw = $value 
    // Do something with $newcw 
    $index++; 
} 

它通过循环每隔一次产生一个新的随机数。

+0

谢谢我会测试它,但为什么你做这个$ index = $ value = 0? –

+0

不能只做$ index = 0或$ value = 0吗? –

+0

是的,你可以在两个不同的行上将变量设置为0。这只是我个人的偏好。当我将多个变量设置为相同的初始值时,它使代码看起来更清晰一些。 –

1

你可以这样做:

$oldcw = NULL; 

foreach($users as $user) { 
    if($oldcw){ 
     $newcw = $oldcw; 
     $oldcw = NULL; 
    }else{ 
     $newcw = mt_rand(1, 52); 
     $oldcw = $newcw; 
    } 
    .... 
}