2017-04-24 23 views
-1

我尝试创建一个发送随机值的变量!Php可变随机确定值

$random = mt_rand(5,10); 

,但我想变随机带我选择这样的数字:

$random = 5;10;15;20;25;30 

变量必须随机送5或10或15或25或30只

+0

',而(($ R = mt_rand(5,30))%5 == 0!);';-) – JustOnUnderMillions

+0

它有答案[这里](HTTP: //stackoverflow.com/questions/1643431/how-to-get-random-value-out-of-an-array)和[here](http:// stackoverflow。com/questions/4233407/get-random-item-from-array) –

回答

1

你可以做的是使用mt_rand函数值从1到6,然后用5

例它们相乘:

$random = mt_rand(1, 6) * 5; 
+0

非常感谢:) – psppro26

1

这样呢?

$random = mt_rand(1,6) * 5; 
1

使用array_rand挑选从数组随机密钥,然后你可以把它放到另一个。

http://php.net/manual/en/function.array-rand.php

$input = array(5,10,15,20,25); 
$rand_key = array_rand($input); 
$another_array[] = $input[$rand_key]; 
+0

这样做的好处是它允许您在需要时更新数字,而不需要计算它的计算方式,例如就好像你需要在某个阶段添加13。 – gabe3886

+0

是的,这只是一种方法,有很多。我想展示一些像替代解决方案的东西:)它取决于真正的原因是什么使用需要:) – Peter

0

你可以使用和元素的数组,并得到一个随机项

$items = Array(5,10,15,20,...50); 

    $myvalue = array_rand($items); 
0

假设你已经拥有你想要一个数组中的值,你可以简单地得到一个随机位置的阵列。由第一元件限定于数组的大小甲rand()可以解决这个

<?php 

$valores = [1,5,12,17,22,30,90,2,4,6]; // choose de values here 

for($i=0;$i<200;$i++){ // just to print more than 1 value 
    echo $valores[rand(1,sizeof($valores))-1]."<br>"; // really pick the values here. start in 1 because we'll remove 1 
} 
0

5它将永远是步骤是什么?然后,你可以不喜欢

$random = mt_rand(1,6) * 5; 

否则我把你想从一个阵列中选择号码,并使用mt_rand()选择一个随机元素:

$random_temp = array(3,6,8,13,16,19); 
$random = $random_temp[mt_rand(0,6)]; 
0

如果随机数摆着,那么这可能帮助:

$list=array(5,10,15,20,25,30); 
$n=count($list)-1; 
$random=$list(rand(0,$n)); 
0
$values = [5,10,15,20,25,30]; 
//shuffle the array 
shuffle($values); 
foreach($values as $v){ 
    print $v; 
} 

总是以不同的顺序...

0

您可以使用rand()

$random = rand(1, 6) * 5; 

会产生:

510152530随机。

0

请试试这个代码

$random = rand(0,30); 

if(($random%5)==0) 
{ 
    echo $random; 
} 
else 
{ 
    echo roundUpToAny($random); 
} 
function roundUpToAny($n,$x=5) { 
    return round(($n+$x/2)/$x)*$x; 
}