uniqid() function bir 13 basamaklı uzun bir onaltılık sayı verir. Php.net sitesinde özelliklerine göre, fonksiyon benzersiz bir değer oluşturmak için microtime kullanır.
Ama microtime aşağıdaki biri olarak dize biçiminde döner numaraları:
"0.70352700 12689396875"
which are basically the microseconds and the seconds elapsed since 1970. This is a 9+11 digits decimal number.
Heks bir 20 ondalık sayı dönüştürme a 16 digits hexadecimal NOT a 13 digits one. ile sonuçlanacaktır
Ben de almaya düşündüm "0". asla değişmeyecek gibi görünüyor bir parçası ve her zaman "00" kalacak gibi görünüyor microsec kısmının son iki rakamı. Bu ondalık sayı yapmak sadece 9 11-3 basamak uzun, ama yine de a decimal number of 17 digits when converted into hex would result in 14 digits hexadecimal number NOT 13. olur
Ben başka bir yol ya A ARTIK / SHORTER EŞSİZ kimliği içine benzersiz bir kimlik ULAŞIM ilgilenmiyorum! BİRİSİ İade sadece 13 basamaklı uniqid ETMEZ NEDEN bilir ben sadece soruyorum.
Bu nosense görünüyor: uniqid daha tek haneli düşük olarak dönerse microtime, bu microtime daha benzersiz sonuçlar verir demektir of the ones returned by uniqid.