2011-03-06 3 views
0

나는 이미지 업로드를 다루고 있으며, 파일과 폴더의 이름을 짓는 것에 대한 제안이 필요하다. 같은 것을 출력MD5 uuid collision?

md5(microtime()) . $this->user_id 

: 해당 파일 이름의

e89ae1857038d0e5d0f8092e6c5390b91

그때 걸릴 처음 3 개 문자가를 생성하기 위해 현재, 나는이 다음 사용하여 파일 이름을 생성하는거야 폴더. 과 같이 될 것입니다 어느 :

/전자/9분의 8

은 그래서 존재를 끝 :

/전자/8/9/e89ae1857038d0e5d0f8092e6c5390b91

md5를 사용하여 폴더간에 파일을 다소 고르게 분배합니다. 그거 좋은데? 충돌 할 기회가 있습니까?

미리 감사드립니다.

답변

1

해시가 있으면 충돌 할 수 있습니다. 생각해 보면 해시는 무한한 수의 입력을 받아 유한 수의 출력으로 바꿉니다.

+0

끝에 사용자 ID를 추가해도 되겠습니까? – RS7

+0

사용자 ID가 고유하면 충돌이 발생하지 않습니다. – schnaader

+0

아. 사용자 ID가 괄호 안에 있다고 생각했습니다. 아니요, 정의에 의해 충돌이 발생하지 않아야합니다. – anon