Heim > php教程 > PHP源码 > PHP-Kontogenerierung mit zufälligem Benutzernamen

PHP-Kontogenerierung mit zufälligem Benutzernamen

大家讲道理
Freigeben: 2016-11-09 14:44:28
Original
1692 Leute haben es durchsucht

Die Schwierigkeit bei der Zufallsgenerierung besteht darin, Kollisionen zu vermeiden. Natürlich können Sie Mechanismen wie MD5 und GUID verwenden, aber als Konto sieht es chaotisch aus und die Anzahl der generierten Ziffern ist zu lang.

Diese Methode muss gleichzeitige Kollisionen nur innerhalb von 1 Sekunde lösen, da der feste Kopf die Unixtime-Zeit verwendet, die auf die Sekunde genau ist. Wenn sie 1 Sekunde überschreitet, muss sich die Zeit dieses Kopfes geändert haben. Gleichzeitig kann diese Methode auch zufällige Bestellnummern für Benutzer generieren.

Die Testbedingung besteht darin, mithilfe einer Schleife 10.000 zufällige Konten (Millisekundenebene) mit 0 Kollisionen und 100.000 Konten mit etwa 0–3 Kollisionen zu erstellen. Es sollte kein Internetunternehmen geben, das im Handumdrehen so viele Konten gleichzeitig erstellen würde, daher reicht es aus, um die Größenordnung von Milliarden PV zu bewältigen.

// Zufällige Benutzernamen automatisch generieren

// Testen Sie, erstellen Sie 10.000 zufällige Konten in einer Schleife, 0 Kollisionen, 100.000 ungefähr 0-3 Kollisionen, genug, um in Zukunft Milliarden von Levels zu bewältigen PV

private function genUserNumber()
{
    $chars = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
    $username = "";
    for ( $i = 0; $i < 6; $i++ )
    {
        $username .= $chars[mt_rand(0, strlen($chars))];
    }
    return strtoupper(base_convert(time() - 1420070400, 10, 36)).$username;
}
Nach dem Login kopieren


Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Empfehlungen
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage