Heim > Backend-Entwicklung > PHP-Tutorial > So generieren Sie einen Empfehlungscode, der absolut einzigartig und nicht leicht zu erraten ist

So generieren Sie einen Empfehlungscode, der absolut einzigartig und nicht leicht zu erraten ist

WBOY
Freigeben: 2016-08-20 09:04:10
Original
1458 Leute haben es durchsucht

Nicht in die Datenbank einchecken

Antwortinhalt:

Nicht in die Datenbank einchecken

<code class="php">function makeCode($t) {
  $time = $t.mt_rand(10,99); // 要是觉得不够可以加上线程ID等。
  $ce = $time[9];
  $xy = array();
  $xy[0] = array('A','F','D','X','G','H','K','U','P','Y','W','P');
  $xy[1] = array('R','G','H','P','X','D','Y','U','K','F','S','Z');
  // ... 不重复的序列即可
  $xy[9] = array('S','K','T','U','E','Q','V','G','R','X','C','J');
  $rb = '';
  for ($i = 12;$i--;) {
    $rb .= $xy[$ce][$time[$i]];
  }
  return $rb;
}

makecode(time())</code>
Nach dem Login kopieren

Für 绝对唯一 verwenden Sie bitte UUID
Wenn Sie beispielsweise ein Linux-System verwenden, können Sie

<code>echo file_get_contents('/proc/sys/kernel/random/uuid');
// 输出: 6c509fc7-328b-4d82-9af8-60c44e7b84b4</code>
Nach dem Login kopieren

Sobald Sie eine einzigartige Saite wie die obige erhalten haben, können Sie damit machen, was Sie wollen, z. B. sie auf die gewünschte Länge zuschneiden.
Es gibt viele Möglichkeiten, UUID in PHP zu generieren. Das Obige ist nur eine einfache Verwendung. Ich empfehle auch einen Link zur Klassenbibliothek


Wenn es sich um einen allgemeinen Empfehlungscode handelt, muss er nicht kompliziert sein, es sei denn, Sie haben viele Benutzer. Wenn es sich um ein gewöhnliches Unternehmen handelt, ist das meiner Meinung nach ausreichend

<code>echo substr(md5(uniqid(mt_rand(1000, 9999), true)), 20);
// 输出:1c7a6db616de </code>
Nach dem Login kopieren

<code>echo bin2hex(openssl_random_pseudo_bytes(16));
// 输出: 5a8a80e06ffe44fd0a6931707a26f0cc</code>
Nach dem Login kopieren
Ebenso können Sie es auch frei abfangen

http://hashids.org/

Fügen Sie einfach einen Prüfcode hinzu

Verwandte Etiketten:
php
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 Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage