PHP가 데이터베이스 테이블에 생성 한 고유 ID를 사용하고 싶습니다.이 ID는 결코 10,000 개가 넘는 레코드를 가질 수 없습니다.고유 ID에 해시를 사용하는 것이 잘못 되었습니까?
sha1(uniqid(mt_rand(), true))
잘못인가를 고유 ID의 해시를 사용하는 : 내가 사용하고, 그래서 나는 창조의 시간을 볼 수 또는 순수하게 숫자 값을 사용하지 않으려는? 모든 해시가 충돌로 이어지거나이 경우 고려되어서는 안되는 너무 먼 거리의 기회입니까?
추가 포인트 : 해시 할 문자 수가 sha1 해시의 문자 수보다 작 으면 항상 고유하지 않습니까?
아니요, 틀리지 않습니다. sha1에 타임 스탬프를 전달하면 좋을 것입니다. – wayne
이것은 좋은 읽을 수 있습니다 :: http://stackoverflow.com/questions/2768191/hash-of-unique-value-unique-hash –
왜 고유 한 ID를 만드시겠습니까? 데이터베이스가 자동 증가 기본 키를 지원하지 않습니까? 이는 일반적으로 데이터베이스 식별자에 대해 고유 한 ID를 갖는 방법으로 받아 들여집니다. –