26개 문자로... 생각보다 다양하게... 정보
26개 문자로... 생각보다 다양하게...본문
예를 들어 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를 만드는 함수를 통해 나오는 것은 가짓수가 말할 수 없이 다양해서 중복체크를 할 필요도 없다고도 하는군요...
추천
0
0
댓글 2개
어렵네요 공부 많이 해야겠어요
@graceway113 php는 문자열 처리를 위한 세밀한 메서드들이 워낙 많아서 너무 좋은 것 같습니다 : )