新人求助 如何生成不重复的4位数字
<?php
//随即生成四位数
function sc(){
for($i=0;$i<4;$i++){
$ygsz=rand(0,9);
$sgesz.=$ygsz;
}
for($a=0;$a<3;$a++){
if($sgesz[$a]==$sgesz[$a+1]){
$vv=sc();
}
}
return $sgesz;
}
$zqsz=sc();
?>
怎么改呢
[解决办法]
function sc() { $ar = array(); for ($i = 0; $i < 4; $i ++) { $r = rand(0, 9); while(in_array($r, $ar)) $r = rand(0, 9); array_push($ar, $r); } return implode('', $ar);}echo sc();
[解决办法]
$arr = Array('0','1','2','3','4','5','6','7','8','9');//定义数组 shuffle($arr);//打乱元素顺序 $rand = array_slice($arr,0,4);//取前四个元素 $result=implode('',$rand);//转成字符串 echo $result;