Heim  >  Artikel  >  Backend-Entwicklung  >  So generieren Sie eine eindeutige ID in PHP

So generieren Sie eine eindeutige ID in PHP

Guanhui
GuanhuiOriginal
2020-05-01 15:39:184379Durchsuche

So generieren Sie eine eindeutige ID in PHP

PHP-Methode zum Generieren einer eindeutigen ID

1, in PHP integrierte Funktion uniqid()

uniqid Wird verwendet, um eine vorangestellte eindeutige ID basierend auf der aktuellen Zeit in Mikrosekunden zu erhalten.

uniqid ([ string $prefix = "" [, bool $more_entropy = false ]] ) : string

Hinweis: Diese Funktion garantiert nicht die Eindeutigkeit des Rückgabewerts. Da die meisten Systeme NTP oder ähnliche Dienste verwenden, um die Systemzeit anzupassen, ändert sich die Systemzeit häufig. Darüber hinaus gibt der Prozess/Thread möglicherweise keine eindeutige ID zurück. Verwenden Sie more_entropy, um die Wahrscheinlichkeit der Einzigartigkeit zu erhöhen.

Die folgende Methode gibt ähnliche Ergebnisse zurück: 5DDB650F-4389-F4A9-A100-501EF1348872

function uuid() {
  if (function_exists ( 'com_create_guid' )) {
    return com_create_guid ();
  } else {
    mt_srand ( ( double ) microtime () * 10000 ); //optional for php 4.2.0 and up.随便数播种,4.2.0以后不需要了。
    $charid = strtoupper ( md5 ( uniqid ( rand (), true ) ) ); //根据当前时间(微秒计)生成唯一id.
    $hyphen = chr ( 45 ); // "-"
    $uuid = '' . //chr(123)// "{"
substr ( $charid, 0, 8 ) . $hyphen . substr ( $charid, 8, 4 ) . $hyphen . substr ( $charid, 12, 4 ) . $hyphen . substr ( $charid, 16, 4 ) . $hyphen . substr ( $charid, 20, 12 );
    //.chr(125);// "}"
    return $uuid;
  }
}

2, md5(time() . mt_rand(1,1000000)) ;

Diese Methode hat eine gewisse Duplizierungswahrscheinlichkeit

Das obige ist der detaillierte Inhalt vonSo generieren Sie eine eindeutige ID in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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
Vorheriger Artikel:PHP-String zum ZeitstempelNächster Artikel:PHP-String zum Zeitstempel