2010-12-06 13 views

Répondre

25

Habituellement, soit créer un UID en utilisant la fonction uniqid() pour le nom de fichier ou créer un dossier avec le nom du nom d'utilisateur qui télécharge le fichier et laisser le nom de fichier d'origine. L'inconvénient de la première est que vous devrez sauvegarder le nom de fichier d'origine quelque part pour montrer à l'utilisateur.

+0

merci, juste ce que je cherchais. – Adamski

4

Vous pouvez utiliser l'horodatage unix lorsque le fichier a été téléchargé. Si vous prévoyez plusieurs mises en ligne simultanées, vous pouvez ajouter un ID utilisateur unique ou une partie du nom de fichier d'origine.

+0

Bonne idée, microtime() est excellent pour un seul utilisateur. – Melsi

1

nom d'utilisateur $. $ Timestamp. $ RandomNumber

ou vous pouvez hachage si vous ne voulez pas que les gens de connaître les détails du moment où il a été téléchargé et par qui

1

Quelque chose comme:

md5(date('Y-m-d H:i:s:u')); 

Sh Je vais très bien travailler.

+8

Les hachages ne sont pas uniques. – afilina

+0

@afilina Pourquoi les hachages ne sont-ils pas uniques? –

+0

Il existe un risque de collision avec MD5 ou toute fonction de hachage, mais cela est peu probable dans la plupart des cas d'utilisation. Ma réponse originale est de 2010. Utilisez sha256, la possibilité d'une collision est très, très faible https://stackoverflow.com/questions/4014090/is-it-safe-to-ignore-the-possibility-of-sha-collisions -en pratique – systematical

Questions connexes