range(1, 12)函数生成以下数组:
array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)如何生成长度为12的数组,其数字介于1至12之间,但具有随机重复值,例如:
array(1, 2, 2, 12, 5, 1, 2, 7, 3, 4, 5, 9)发布于 2017-02-03 20:55:50
我有点无聊,所以我可能会想出更多的方法,但只需创建范围并对其进行转换:
$result = array_map(function($v) { return rand(1, 12); }, range(1, 12));发布于 2017-02-03 20:59:11
像这样?
<?php
function randomRange($start,$end)
{
$array = array();
for($i=$start;$i<=$end;$i++){
$array[] = rand($start,$end);
}
return $array;
}
$a = randomRange(1,12);
print_r($a);
?>发布于 2017-02-03 21:11:37
发电机版本:
function rrange($start, $end) {
foreach (range($start, $end) as $_) {
yield rand($start, $end);
}
}
var_dump(iterator_to_array(rrange(1, 12)));https://stackoverflow.com/questions/42032839
复制相似问题