function
rand_number(
$num
)
{
return
rand(0,
$num
);
}
function
outnumber(
$n
,&
$arr
,
$max
)
{
$number
=rand_number(
$max
);
if
(
$number
>
$n
)
$number
=
$number
%
$n
+1;
while
(!
empty
(
$arr
)){
if
(!isset(
$i
)) {unset(
$arr
[
$number
]);var_dump(
$arr
);}
//删除元素
$i
=
$number
;
//需要索引才能找到下一个间距为新$number的元素
$number
=rand_number(
$max
);
//生成下一个随机数
if
(
$number
>
$n
)
$number
=
$number
%
$n
+1;
echo
‘下一个间距‘
.
$number
.
‘元素‘
.
‘<br>‘
;
$count
=0;
$n
=
end
(
$arr
);
while
(
$count
<
$number
){
if
(
$i
>=
$n
)
$i
=1;
//最后一个元素则返回到第一个元素
else
$i
++;
if
(!isset(
$arr
[
$i
])) {
continue
;}
else
{
$count
++;}
//找到一个元素才++
}
unset(
$arr
[
$i
]);
var_dump(
$arr
);
}
}
$max
=100;
$n
=6;
for
(
$i
=1;
$i
<=
$n
;
$i
++)
$arr
[
$i
]=
$i
;
outnumber(
$n
,
$arr
,
$max
);
原文:http://www.cnblogs.com/Blogyy/p/4368935.html