묻고답하기

rand()함수를 사용하기 전에 srand()함수를 먼저 사용해야 한다고 하는데요.
저는 ...

<?
echo rand(10,20);
?>

이렇게 해도, 10~20 사이의 숫자가 random하게 자~알 출력이 되거든요.
그런데, 제가 보고 있는 책이나, PHP관련 질문답변 게시판을 봐도, 반드시 srand() 함수로
난수를 발생하여야 rand() 함수를 사용할 때 숫자가 random 하게 나온다고 하는데요.
꼭 필요한 것 같지 않은 생각이 들지만, 책과 여러유저분들의 답변 내용을 보아 꼭 사용해
야할 것이라고 생각들어서 질문을 드려요.

질문1)
srand()함수를 이용하지 않고, rand() 함수만으로도 숫자가 random하게 출력이 잘 되는데, 왜??
srand()함수를 먼저 호출해야 하는건가요??


질문2)
srand() 함수는 seed 라는 난수를 발생하는 값을 전달받아 난수를 발생시키는데, 난수를 발생시
키기 위해 seed는  microtime() 함수를 사용한다고 제가 보고 있는 책과 여러유저분들이 남긴 글
을 보고 알았는데요, microtime()함수 말고, mktime() 함수를 사용하면 안되는건가요??

질문3)
예를들어

<?
srand(12345678910);
echo rand(10,20);
?>

이렇게 코딩을 하면 계속 10이라는 값만 나오던데요.
제가 생각하에는... srand() 함수에 지정된 1234567890 이라는 숫자중 임의의 숫자들이 조합되
어 난수가 발생되고, rand() 함수는 srand()함수에서 조합된 난수 중 10~20 사이에 해당되는 숫자면 반환시키고, 그렇지 않으면 다른 난수 달라고 요청하는 식으로 작동되는 것이라고 생각했었
는데, 그렇지가 않더라구요. 제가 보고 있는 책에 나온 예제를 보면...

<?
srand ((double)microtime()*1000000);
echo rand(1,10);
?>

이에 대한 대략적인 설명이...

계속 값이 바뀌는 microtime()함수에 의해 발생된 숫자중 실수부분에 1000000 을 곱한 결과값을 가지고 난수를 발생시키고 이 난수를 가지고 rand() 함수는 계속 다른 숫자를 random 하게 반환할 수 있다

라고 나와 있는데요, seed에 전달된 값이 몇십만은 되는데...어떻게 10~20의 사이의 숫자를 만
들어 낸다는 것인지..알 수가 없네요. 이에대한 설명이 없기 때문에 srand()함수를 사용해야
하는 이유를 모르겠더라구요.
그리고, srand() 함수를 사용할 때와 사용하지 않을 때의 차이점도 예제로 나와 있지도 않고..
ㅡㅡ; 정말로 답답하네요..
글쓴이 제목 최종 글
XE 공지 글 쓰기,삭제 운영방식 변경 공지 [16] 2019.03.05 by 남기남
심윤정 플래시버튼 링크걸기 질문합니다. [2] 2007.08.10
최강남자킹 방명록 소스중에 아래처럼 에러메시지 나옵니당. 이유가 몰까여?  
clo [re] 좀 길어서 답글을 답니다.  
아벨라 배경화면고정하면서 랜덤이미지 나오게  
김상직 예전에 있던 비혼님 자료는 모두 어디에...? [1] 2007.08.10
서민웅 필름 테두리효과좀 부탁드려요... [1] 2007.08.10
양의석 마이크로소프트의 홈페이지 메뉴.. 소스좀 분석해주세요 [6] 2007.08.10
Medic 제일 쓰기 좋은 포토샵 버전좀.. [7] 2007.08.10
lee 새창 띄우기 할려믄........  
신기종 제로 카운터에서.... [5] 2007.08.10
비공개 질문입니다 꼭 읽어주셨으면 합니다. [3] 2007.08.10
:)Smile MYSQL 이 문제에요.. 도와주실 ㅜ_ㅜ;;  
카루스[SiZZ] 테이블이 이상해요-_-;;;;;;;;;; [2] 2007.08.10
[DIGIVICE] 랜덤으로 플래시를 로딩하려고 합니다. [3] 2007.08.10
알럽세스 로그인설치어떻게.. [1] 2007.08.10
뿌니 최근게시물 설치 링크는... [3] 2007.08.10
서민규 회원가입시에 비밀번호 두개넣고 다를경우 에러메세지 뜨게 하는 방법 알려주세요 [1] 2007.08.10
이청원 플레쉬에 음악같은거 어떻게 넣어여? [2] 2007.08.10
펠렌 메일링 관련 질문...  
김보민 저기요오오오오!!!!!!!!!!!!!!!!!!!11 [1] 2007.08.10