Rumah > Artikel > pembangunan bahagian belakang > Bagaimana untuk melaksanakan nombor rawak tidak berulang dalam julat php
Cara melaksanakan nombor rawak tidak berulang dalam julat PHP: 1. "$result = array_slice($numbers,0,$num);" setiap ( $numbers)) {...}" kaedah; 3. "array_slice($rand_array,0,$limit);" kaedah; 4. "julat(1,30);" kaedah.
Persekitaran pengendalian tutorial ini: sistem Windows 7, PHP versi 8.1, komputer Dell G3.
Bagaimana untuk melaksanakan nombor rawak tidak berulang dalam julat php?
Beberapa cara untuk menjana nombor rawak tidak berulang dengan PHP
Kaedah satu:
<?php $numbers = range (1,50); //shuffle 将数组顺序随即打乱 shuffle ($numbers); //array_slice 取该数组中的某一段 $num=6; $result = array_slice($numbers,0,$num); print_r($result); ?>
Kaedah kedua:
<?php $numbers = range (1,20); //播下随机数发生器种子,可有可无,测试后对结果没有影响 srand ((float)microtime()*1000000); shuffle ($numbers); //跳过list第一个值(保存的是索引) while (list(, $number) = each ($numbers)) { echo "$number "; } ?>
Kaedah tiga:
<?php function NoRand($begin=0,$end=20,$limit=5){ $rand_array=range($begin,$end); shuffle($rand_array);//调用现成的数组随机排列函数 return array_slice($rand_array,0,$limit);//截取前$limit个 } print_r(NoRand()); ?>
Kaedah empat:
<?php $tmp=array(); while(count($tmp)<5){ $tmp[]=mt_rand(1,20); $tmp=array_unique($tmp); } print_r($tmp); ?>
Kaedah lima:
<?php $tmp = range(1,30); print_r(array_rand($tmp,10)); ?>
Pembelajaran yang disyorkan: "PHP Video Tutorial》
Atas ialah kandungan terperinci Bagaimana untuk melaksanakan nombor rawak tidak berulang dalam julat php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!