2013-03-12 66 views
0

嗨,我想使用PHP回声随机设置的数字从0.5一直到1;所以05,0.6,0.7,0.8> 1回显随机数字0.5到1?

我目前正在呼出一个用户列表,因此需要这些数字随每个用户随机回显。

有没有简单的方法来做到这一点?

<?php 
    $local_set = get_local_users(); 
    $local_count = mysql_num_rows($local_set); 
    while ($local = mysql_fetch_array($local_set)) { 

     echo "<div class=\"sugarushcase\"> 
     <a href=\"profile.php?id={$local['id']}\"><img width=80px height= 80px src=\"data/photos/{$local['id']}/_default.jpg\" class=\"boxgrid\"/></a><div class=\"local_text\">about (RANDOM NUBER) mile</div> 
     </div>"; 

    } 
+2

你的“随机数”的描述是如此复杂,以至于让我怀疑是否你实际上想要一个序列: - ?而且,你的代码或MySQL标签与你的问题有什么关系? – 2013-03-12 15:45:46

回答

3

使用mt_rand()

$rand = mt_rand(5, 10)/10; 

您可以计算每个迭代的此随机数,在echo之前,然后在您的示例中使用$rand而不是(RANDOM NUMBER)

+0

感谢这个很好的工作,我已经这样做了,就像这样:$ rand = mt_rand(4,10)/ 10;所以数值显示为0.4/0.5等有没有办法,我可以得到它,如果它是1显示为1.0而不是1? – 2013-03-12 15:59:25

+0

@JamesPale,当然,请看['number_format()'](http://php.net/number_format)。你可以使用类似于:'$ rand = number_format($ rand,1)'; – rid 2013-03-12 16:00:43

1

您可以使用rand实现这一点,通过在最小和最大:

rand (5, 10)/10 

您的代码将被:

echo "<div class=\"sugarushcase\"> 
    <a href=\"profile.php?id={$local['id']}\"><img width=80px height= 80px" + 
    "src=\"data/photos/{$local['id']}/_default.jpg\" class=\"boxgrid\"/></a><div class=\"local_text\">about" + 
    (rand (5, 10)/10) + "mile</div></div>"; 
+0

我将如何构建该代码? – 2013-03-12 15:45:22

+0

@JamesPale新增了一个用法:) – mattytommo 2013-03-12 15:48:35

0

是的,这里是你的编辑代码。

<?php 
$local_set = get_local_users(); 
$local_count = mysql_num_rows($local_set); 
$random_number = mt_rand (0.5*10, 1.0*10)/10; //Edit min/max values here 
while ($local = mysql_fetch_array($local_set)) { 

    echo "<div class=\"sugarushcase\"> 
    <a href=\"profile.php?id={$local['id']}\"><img width=80px height= 80px src=\"data/photos/{$local['id']}/_default.jpg\" class=\"boxgrid\"/></a><div class=\"local_text\">about {$random_number} mile</div> 
    </div>"; 

} 

这是写不被测试,因此评论,如果它不工作&我会考虑它:)