PHP ile rastgele şifre üretmek

PHP web programlamaya yeni başlayanlar arasında bu sorunun yanıtını merak edenler illa vardır sanırım 🙂 Onlar için PHP ile rastgele şifre üreteceğiz. Şifre uzunlukları ise sabit değil, fonksiyon içerisinde belirttiğimiz kadar olacak.

Rastgele şifre üretme fonksiyonu
Rastgele şifre üretmeye yarayan fonksiyonumuz alttaki. Çok daha uzunları ve çok daha kısaları yazılabilir. Fakat alttaki işinizi görecektir 😉

function sifre_uret($uzunluk) {
$karakterler = "abcdefghijklmnopqrstuvwxyz1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ-*_!@#$()+=";
$karakter_sayi = strlen($karakterler);

for ($ras = 0; $ras < $uzunluk; $ras++) { $rakam_ver = rand(0,$karakter_sayi-1); $sifre_ver .= $karakterler[$rakam_ver]; } return $sifre_ver; }

Nasıl oluyor?
Fonksiyonumuzu çağırırken $uzunluk değişkeni ile şifre uzunluğunu tanımlıyoruz. $karakterler ile şifre içerisinde yer alacak karakterleri tanımladık. Ve hemen sonrasında toplam karakter sayısını bulduk. Şifre uzunluğu kadar bir döngü yarattık ardından ve her seferinde toplam karakter sayısının bir altı kadar rakam arasından rastgele birini seçtik. (bir eksiği kadar çünkü dizi değişkenler 0 numaradan başlar).. Sonrasında ise tanımlı karakterlerimizden az önce rastgele üretilen rakam sırasında olanı seçtik.. Hepsi bu kadar 🙂

Kullanımı

sifre_uret(8);

Şeklindeki kullanım ile 8 karakter uzunluğunda bir şifre elde ederiz 😉