>  기사  >  백엔드 개발  >  PHP에서 반복되지 않는 난수를 생성하는 방법

PHP에서 반복되지 않는 난수를 생성하는 방법

coldplay.xixi
coldplay.xixi원래의
2020-08-22 13:48:382823검색

PHP에서 반복되지 않는 난수를 생성하는 방법: 1. shuffle 함수를 사용하여 배열의 순서를 무작위로 뒤섞고 배열의 특정 섹션을 가져옵니다. 코드는 [shuffle ($numbers)]입니다. 미리 만들어진 배열을 호출하여 함수를 무작위로 배열하고 첫 번째 [$limit] 함수를 가로챕니다.

PHP에서 반복되지 않는 난수를 생성하는 방법

【관련 학습 추천: php 프로그래밍(동영상)】

php에서 반복되지 않는 난수를 생성하는 방법:

방법 1:

코드는 다음과 같습니다.

<?php
$numbers = range (1,50);
//shuffle 将数组顺序随即打乱
shuffle ($numbers);
//array_slice 取该数组中的某一段
$num=6;
$result = array_slice($numbers,0,$num);
print_r($result);
?>

방법 2:

코드는 다음과 같습니다.

<?php
$numbers = range (1,20);
//播下随机数发生器种子,可有可无,测试后对结果没有影响
srand ((float)microtime()*1000000);
shuffle ($numbers);
//跳过list第一个值(保存的是索引)
while (list(, $number) = each ($numbers)) {
echo "$number ";
}
?>

방법 3:

코드는 다음과 같습니다.

<?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());
?>

위는 1~20 사이의 고유한 값 5개를 무작위로 생성할 수 있습니다

방법 4:

코드는 다음과 같습니다.

<?php
$tmp=array();
while(count($tmp)<5){
$tmp[]=mt_rand(1,20);
$tmp=array_unique($tmp);
}
print_r($tmp);
?>

방법 5:

코드는 다음과 같습니다.

<?php
$tmp = range(1,30);
print_r(array_rand($tmp,10));
?>

이것보다 간단할 수 있습니다. (ps: 스텝 크기가 범위 내에서 지정된 경우 주의해야 할 사항은 다음과 같습니다. array_rand의 두 번째 매개변수가 $tmp의 길이를 초과하는지 여부).

【관련 학습 권장 사항: php 그래픽 튜토리얼

위 내용은 PHP에서 반복되지 않는 난수를 생성하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.