1 ~ 45 사이의 숫자를 랜덤하게 6개를 추출하는 코드다.
검색해서 찾아보니 PHP School 에 올라온 코드를 수정해서 bootstrap 기반으로 작성했다.
mt_rand(1, 45); // 지정된 범위에서 랜덤한 숫자 반환하는데 번호 중복 발생한다.
이걸 이용해서 하는 방법도 좀 더 고민해보면 좋을거 같다.
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1" />
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
</head>
<body>
<div class="container col-md-6">
<table class="table table-bordered table-hover table-responsive">
<thead>
<tr>
<th align="center" colspan="7">로또번호 자동 생성기</th>
</tr>
</thead>
<tbody>
<tr>
<?php
$lotto = lotto(5);
//$lotto = getLotto(5);
for ($i = 0; $i < sizeof($lotto); $i++) {
$cnt = $i + 1;
echo '<td align="center" bgcolor=eeeeee>' . $cnt . 'th' . '</td>';
for ($j = 0; $j < 6; $j++) {
echo '<td align="center">' . $lotto[$i][$j] . '</td>';
}
echo "</tr>";
}
?>
</tbody>
</table>
</div>
</body>
</html>
<?php
function lotto($num) {
for ($i = 0; $i < $num; $i++) {
$lott_num = range(1, 45); // range함수를 통해 1~45까지의 수를 배열로 생성
shuffle($lott_num); //배열 변수를 랜덤하게 뒤섞는다
for ($j = 0; $j < 6; $j++) {
$lotto[$i][$j] = $lott_num[$j];
}
/* 오름차순 정렬 sort 함수*/
sort($lotto[$i]);
}
return $lotto;
}
?>
'Web 프로그램 > PHP 응용 및 활용' 카테고리의 다른 글
PHP 배열 합집합, 교집합, 차집합, 대칭차집합 (0) | 2018.04.01 |
---|---|
PHP 배열함수 정렬 - sort, rsort, ksort, krsort, asort, arsort (0) | 2018.03.31 |
온라인 투표 소스 (회원관리 포함) (2) | 2017.12.23 |
Deprecated: preg_replace() (0) | 2017.12.07 |
[PHP기초] selectbox 에서 선택한 값 가져오기 (0) | 2017.10.27 |