비복원 추출 구현하기 정보
비복원 추출 구현하기본문
<?php
$a = [1,2,3,4,5];
print_r($a);
nre(5);
print_r($a);
function nre($count){
global $a;
$len = count($a);
$tmp = [];
for($i = 0; $i < $count; $i++) {
$randNum = rand(0,$len-1);
if($a[$randNum] != NULL) {
array_push($tmp, $a[$randNum]);
$a[$randNum] = NULL;
} else {
$i--;
}
}
print_r ($tmp);
}
결과 :
Array // $a 변수, 기존 배열
(
[0] => 1
[1] => 2
[2] => 3
[3] => 4
[4] => 5
)
Array // 비복원추출한 후 새로운 배열
(
[0] => 1
[1] => 5
[2] => 2
[3] => 4
[4] => 3
)
Array //비복원 추출 후 $a 배열
(
[0] =>
[1] =>
[2] =>
[3] =>
[4] =>
)
랜덤 확률을 구현하려고 작업 했는데 혹시나 필요하신 분이 있을까 해서 공유합니다.
!-->
추천
5
5
댓글 9개
감사합니다.
$a = [1,2,3,4,5];
shuffle($a);
$b = $a;
$a = array_fill(0, 5, null)
이거랑 같은건가요?
shuffle($a);
$b = $a;
$a = array_fill(0, 5, null)
이거랑 같은건가요?
@몰라무서워 같네요
감사합니다.
감사합니다^^
코딩이 좀 .... 초보적이네요 !
굿굿
감사합니다^^
감사합니다.