제목 | 랜덤 아이디 생성시에... | ||
---|---|---|---|
글쓴이 | 헛발이 | 작성시각 | 2014/04/17 08:54:32 |
|
|||
숫자만으로 6자로 된 아이디를 자동생성되어 저장되는 데이터들을 만들었는데요.... 이거 혹시 아주 나중에 혹시 데이터가 많아 지면 중복되는 경우가 있을까요? 소스는 다음과 같습니다.. if ( ! function_exists('get_random_password')) { function get_random_password($chars_min=6, $chars_max=8, $use_upper_case=false, $include_string=false, $include_special_chars=false) { $length = rand($chars_min, $chars_max); $selection = '1234567890'; if($include_string) { $selection .= "aeuoyibcdfghjklmnpqrstvwxz"; } if($include_special_chars) { $selection .= "!@\"#$%&[]{}?|"; } $password = ""; for($i=0; $i<$length; $i++) { $current_letter = $use_upper_case ? (rand(0,1) ? strtoupper($selection[(rand() % strlen($selection))]) : $selection[(rand() % strlen($selection))]) : $selection[(rand() % strlen($selection))]; $password .= $current_letter; } return $password; } } |
|||
다음글 | 배열질문 (3) | ||
이전글 | php 버전에 올라감에 따라 copy함수도 변경 되나요... (2) | ||
수야디벨
/
2014/04/17 10:14:21 /
추천
0
|
한대승(불의회상)
/
2014/04/17 10:18:34 /
추천
0
수야디벨님 의견처럼 아무리 정교하게 만들어도 중복이 있을수 있다에 저도 한표
CI에서도 랜덤으로 문자열을 만들어주는 함수가 있습니다. 참고 하셔요.. ^^ http://cikorea.net/user_guide_2.1.0/helpers/string_helper.html |
헛발이
/
2014/04/17 10:33:39 /
추천
0
앗 있었군요....
괜히 함수를 찾아 만들었군요 ㅋㅋ DB에서도 유니크 하게 설정하고 저장하기 전에 중복확인도 하긴 하지만... 램덤생성시 중복이 될까 하는 의문이 들어서요.. 중복될 가능성이 100%없다고 볼수는 없군요.. 잘 알겠습니다.. |
변종원(웅파)
/
2014/04/17 10:44:47 /
추천
0
uuid 검색해서 적용해보세요. ^^
|
마지막으로 데이터를 저장하기전에 , 그 데이터가 중복된 데이터 인지 한번 검사해주세요.
그래서 중복되지 않으면 데이터를 저장하시고, 중복되면 다시 자동생성 function 으로 흐르게 follow를 짜시면
혹시나 .. 하는 오류를 막을수 있습니다