Home > PHP > PHP ile rasgele şifre üretmek

PHP ile rasgele şifre üretmek

PHP ile rasgele şifre üretmek için aşağıdaki scripti kullanabilirsiniz. Fonksiyon sizin vereceğiniz uzunluk değerine göre bir şifre üretiyor. Algoritma şu şekilde çalışıyor;ilk önce rand() fonksiyonu ile şifreyi oluşturacak karakterlerin ASCII değerleri elde ediliyor, chr() fonksiyonu ile de karakter karşılıkları elde ediliyor ve switch() fonksiyonunda da hangi case’in çalışacağı yine rasgele belirlenerek her bir karakter için üç farklı tipde değer elde edilmesi sağlanıyor.

function rasgeleSifre($uzunluk)
{
 $sifre = ; //başlangıç değeri boş olarak ayarlanıyor.
 for($i=0;$i<$uzunluk;$i++)
 {
   switch(rand(1,3))
   {
     case 1: $sifre.=chr(rand(48,57));  break; //0-9
     case 2: $sifre.=chr(rand(65,90));  break; //A-Z
     case 3: $sifre.=chr(rand(97,122)); break; //a-z
   }
 }
 return $sifre;
}

$sifre=rasgeleSifre(200);
echo $sifre;
?>

Comments:3

Leave a Reply
  1. Reply cihan
    06/06/12

    aynı şifreyi verme olasılığı yok mu bunda benim bildiğim rnd() fonksyonu çekirdek olarak sistem saatini referans alıyor.Ama başka türlüyse bilemem tabi

  2. Reply Uğur YILDIZ
    06/06/13

    Elbette üretilen rasgele sayının aynı gelme olasılığı vardır. Üretilen sayının çekirdeğindeki referans zaman aralığının değiştirilmesi de mümkündür. bu işlem için genellikle srand() fonsiyonu rand() fonksiyonundan önce şu şekilde kullanılır.

    srand((double)microtime()*1000000);

    Ama dahi iyi sonuç veren php fonksiyonları da mt_rand() ve mt_srand() fonksiyonlarıdır. PHP varsayılan olarak rand() fonksiyonunda libc kütüphanesini kullanır. mt_rand() ve mt_srand() fonksiyonları varsayılan olarak kullanılan rand() fonksiyonundan ortalama 4 kez daha hızlı rasgele sayı üretmektedir.

  3. Reply Gokhan
    06/06/21

    iyi guzelde bloguna bırseyler ekle ıstersen.ayrıca bilardo maceralarını yaz bloguna

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

 

Trackbacks:0

Listed below are links to weblogs that reference
PHP ile rasgele şifre üretmek from uguryildiz.net
TOP