Comment puis-je utiliser uniqid pour générer un 6 caractères ID?
Mon site a une section qui génère un identifiant unique pour chaque poste, puis il est transmis à la base de données. Le problème est que le code qui est généré totaux 16 caractères en longueur et j'ai besoin de l'id à 6 caractères seulement.
C'est le code qui est utilisé pour générer l'ID:
$order_id = uniqid(rand(10,1000), false);
Est-il possible que j'ai pu accomplir un tel changement?
OriginalL'auteur Gman | 2012-05-11
Vous devez vous connecter pour publier un commentaire.
Pourquoi ne pas le faire avec auto_incremental dans la base de données? Donc, la première id est 1, puis 2 et ainsi de suite. Si vous avez besoin seulement 6 chiffres le résultat sera 999 999 clés différentes.
Préalablement accepté de répondre ici, en utilisant
substr()
de prendre les 6 premiers caractères deuniqid()
, n'est pas sûr à 100%.uniqid
sera produit un id unique où l'id de l'ENSEMBLE sera unique. Par le retrait de ces caractères vous pouvez vous retrouver avec des doublons.OriginalL'auteur OptimusCrime