테스트 사이트 - 개발 중인 베타 버전입니다

26개 문자로... 생각보다 다양하게...

· 4년 전 · 1097 · 2

예를 들어 https://short.url/yVfBd 이런 도메인처럼 마지막에

short url 만들려다

스트링 제너레이터에 갑자기 관심이 가져져서요... 

 

0-9의 10개 숫자로 4자리 숫자를 만들 수 있는 경우의 수는? 

9999가 가장 높은 숫자겠지요? 0000이라는 것까지 포함하면 1만개... 

10가지 X 10가지 X 10가지 X 10가지  = 10^4 니까요... 

 

그런데 숫자로만 하면 쉽게 예측이 가능하니까... 문자를 섞어서... 

아래의 문자들 

$chars = "0123456789"; // 10개
$chars .= "abcdefghijklmnopqrstuvwxyz"; // 26개
$chars .= "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; // 26개

토탈 62개의 문자니까, 만들 수 있는 숫자의 갯수는

3자리일 때 

echo pow(26, 3); // 17,576 가지

4자리일 때
echo pow(26, 4); //456,976 가지

5자리일 때

echo pow(26, 5); // 11,881,376 가지

머, 그 이상은... 엄청나겠지요? 

나  나오네요... 디비에 넣을 때 중복되면 함수를 다시 실행시켜서 입력하면 가능할 것도 같고... 

 

의외로 길지않은 랜덤 url 을 만들거나 회원인증할 때 사용할 수 있겠다 싶어서... 

지나가다 남겨봅니다. 


ps. 참고로 uuid를 만드는 함수를 통해 나오는 것은 가짓수가 말할 수 없이 다양해서 중복체크를 할 필요도 없다고도 하는군요... 

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기

댓글 2개

어렵네요 공부 많이 해야겠어요
@graceway113 php는 문자열 처리를 위한 세밀한 메서드들이 워낙 많아서 너무 좋은 것 같습니다 : )

게시글 목록

번호 제목
1717652
1717651
1717650
1717648
1717635
1717629
1717626
1717625
1717621
1717619
1717611
1717610
1717609
1717607
1717601
1717598
1717591
1717590
1717583
1717575
1717572
1717568
1717566
1717549
1717545
1717533
1717512
1717511
1717508
1717495