Erzeugung von zufälligen, aber eindeutigen Nummern für die Referenz-ID
Ich möchte zum erzeugen eindeutiger Nummern, so dass ich verwenden können Sie als Referenz-Nummern mit meinem client-Anfragen.
Ich möchte nicht, dass die zahlen wiederholt werden, weder bin ich mit jeder Datenbank, die zum speichern der zahlen.
Möchte ich einfach nur mit einem einfachen Algorithmus, um Zufallszahlen zu generieren.
Ich bin mit so etwas wie
rand(10*45, 100*98)
Ist es möglich, etwas zu tun.
Ich kenne meine Anforderung scheint sehr seltsam, aber ich möchte nur wissen, ob das möglich.
- Ich bin nicht mit jeder Datenbank, ich wollte einfach, dass es einfach sein wie der Referenz-Nummer per E-Mail an den AUFTRAGGEBER und Besitzer, und Sie kommunizieren mit Hilfe der Referenz-Nummer. Die Idee von @njk ist gut genug, und logisch genug
- Es muss dezimal (ich.e-base-10)?
- Nein, es kann eine beliebige Anzahl
Du musst angemeldet sein, um einen Kommentar abzugeben.
Warum nicht einfach ein Vorwort Ihre Zufallszahl mit einem Unix-timestamp? Dadurch wird die Eindeutigkeit.
Sonst, können Sie Ihre zahlen in einer Datei. Wenn Sie können, speichern Sie in einer Datenbank.
microtime
.Warum nicht die Funktion nutzen, php stellt für diesen Zweck:
uniqid
Beispiel:
uniqid(rand(10*45, true))
*Wenn Sie akzeptieren, hexadezimale zahlen, dann:
5 bytes (also 40 bits) erzeugt etwa 2^40 (rund eine Billionen Euro) möglich, eindeutige Werte. Es sollte mehr sein als ein zufälliges genug, um viele einzigartige IDs.