0

有没有办法从数字列表中获取随机数,然后将它们按顺序排列?

例如,如果我想要 1 到 12 之间的 4 个数字,我怎样才能按升序获得这些数字?

编辑:我需要数字是唯一的。

4

4 回答 4

3
$output = array();
for($i=1;$i<=4;$i++){
   $output[] = mt_rand(1, 12);
}
sort($output);
于 2012-07-10T02:59:06.007 回答
1

将随机值存储在一个数组中,然后使用 PHP 的排序函数: http: //php.net/manual/en/function.sort.php

$numbers = range(1, 12); 
shuffle($numbers); 
$numbers=array_slice($numbers, 0, 4); 
sort($numbers);
于 2012-07-10T02:54:46.040 回答
0
<?
$y=array();
for($i=0;$i<4;$i++){$y[$i]=mt_rand(1,12);}
sort($y);
?>
于 2012-07-10T02:59:40.783 回答
0

试试这个,添加到数组,然后排序。

foreachrange会更容易阅读,所以更容易维护:)

<?php
$b1 = 1;
$b2 = 12;

$nums = array();
foreach(range(1,4) as $i){
   $nums[] = rand($b1,$b2);
}
sort($nums);
var_dump($nums);

有关排序的更多信息 http://php.net/manual/en/function.sort.php

于 2012-07-10T03:00:58.720 回答