PHP’de nasıl eşsiz bir rastgele sayı üretebilirim? Bunun için rand() fonksiyonu yeterli olmadığından başka bir yöntem mi kullanmalıyım? Örneğin, kullanıcının bir hesap oluşturması durumunda kullanıcıya otomatik olarak bir ID atamak istiyorum ve bu ID’nin eşsiz olması gerekiyor.
PHP’de eşsiz bir rastgele sayı oluşturmak için rand()
fonksiyonu kullanılamaz çünkü bu fonksiyonun oluşturduğu sayılar önceden belirlenebilir. Bu nedenle, uniqid()
fonksiyonu kullanarak eşsiz bir rastgele sayı oluşturabilirsin.
uniqid()
fonksiyonu, benzersiz bir string döndürür ve bu string’i kullanarak eşsiz bir sayı oluşturabilirsin. Bu fonksiyona parametre olarak geçirilebilen mikro saniye değeri de olasılığı daha da artırır.
Aşağıda uniqid()
fonksiyonu kullanarak eşsiz rastgele sayı oluşturmanın örnek bir kodu verilmiştir.
$rand_num = uniqid('', true);
echo $rand_num;
Bu kodda, $rand_num
değişkeni, uniqid()
fonksiyonu ile oluşturulan benzersiz bir stringi alır ve true parametresi sayesinde stringin sonuna bir mikro saniye değeri eklenir.
Not: uniqid() fonksiyonu kullanırken dikkat edilmesi gereken bir nokta, bu fonksiyonun sunucu saatine bağlı olduğudur. Bu nedenle, sunucunun saat ayarlarının doğru olduğundan emin olmanız gerekir.
ZOR TERİMLER:
uniqid() fonksiyonu: Benzersiz bir string döndürür. İlk parametre, başlangıç değeri olarak kullanılabilir. İkinci parametre, stringin sonuna rastgele oluşturulan bir sufix (mikro saniye değeri) eklenmesine izin verir.