2011-09-17 22 views

cevap

11

Örneğin auto_increment resim kimliğinizi, örneğin base58 (a-zA-Z0-9) 'a dönüştürülebilir.

base_convert

base36 kadar dönüştürebilirsiniz: Eğer önceden tahmin edilemeyecek görüntü kimlikleri istiyorsanız

$id = base_convert(123456789, 10, 36); // "21i3v9" 

this answer bakmak,

(ayrıca PHP - How to base_convert() up to base 62 bakınız). MongoDB kimlikleri için


(Eğer MongoDB kullandığınız gibi):

kimlikleri onları 24 byte eder base16 için kodlanmış 12 bayt numaraları vardır.

Sen base58 için base16 dan dönüştürerek 17 bayt onları sıkıştırabilir:

gmp_strval(gmp_init("47cc67093475061e3d95369d", 16), 58)); // "1KXotnQBQbcPmeOo9" 

Ayrıca Sıra Numaraları bölüm here bakabilirsiniz. Bu, resimleriniz için daha küçük benzersiz sayılar oluşturmanıza olanak tanır.

+0

Ama ... MongoDB kullanarak, 'shkxjfhsuhgh' gibi benzersiz bir kimlik alanı var, bu yüzden bir tamsayı – michael

+0

değil, neden kullanmıyorsunuz? – arnaud576875

+0

güncellendi yanıt. – arnaud576875

İlgili konular