Büyük ve Küçük Harf, Sayı ve Özel Karakter Seçerek Rastgele Şifre Oluşturma

PHP
107 lines
<?php
header('Content-Type: text/html; karakterleret=utf-8');
class sifre {
var $kucukharf;
var $buyukharf;
var $sayi;
var $ozelkarakter;
Var $uzunluk;
Var $onek;
function sifre($uzunluk=10,$onek='') {
$this->uzunluk = $uzunluk;
$this->onek = $onek;
$this->kucukharf = true;
$this->buyukharf = true;
$this->sayi = true;
$this->ozelkarakter = false;
}
function olustur() {
if ($this->buyukharf) {
$karakterler = array("A","B","C","D","E","F","G","H","I","J","K",
"L","M","N","O","P","Q",
"R","S","T","U","V","W",
"X","Y","Z");
}
if ($this->kucukharf) {
$karakterler[] = "a";
$karakterler[] = "b";
$karakterler[] = "c";
$karakterler[] = "d";
$karakterler[] = "e";
$karakterler[] = "f";
$karakterler[] = "g";
$karakterler[] = "h";
$karakterler[] = "i";
$karakterler[] = "j";
$karakterler[] = "k";
$karakterler[] = "l";
$karakterler[] = "m";
$karakterler[] = "n";
$karakterler[] = "o";
$karakterler[] = "p";
$karakterler[] = "q";
$karakterler[] = "r";
$karakterler[] = "s";
$karakterler[] = "t";
$karakterler[] = "u";
$karakterler[] = "v";
$karakterler[] = "w";
$karakterler[] = "x";
$karakterler[] = "y";
$karakterler[] = "z";
}
if ($this->sayi) {
$karakterler[] = "1";
$karakterler[] = "2";
$karakterler[] = "3";
$karakterler[] = "4";
$karakterler[] = "5";
$karakterler[] = "6";
$karakterler[] = "7";
$karakterler[] = "8";
$karakterler[] = "9";
$karakterler[] = "0";
}
if ($this->ozelkarakter) {
$karakterler[] = '!';
$karakterler[] = '@';
$karakterler[] = '#';
$karakterler[] = "$";
$karakterler[] = '%';
$karakterler[] = '^';
$karakterler[] = '&';
$karakterler[] = '*';
$karakterler[] = '(';
$karakterler[] = ')';
$karakterler[] = '{';
$karakterler[] = '}';
$karakterler[] = '[';
$karakterler[] = ']';
$karakterler[] = '<';
$karakterler[] = '>';
$karakterler[] = '?';
$karakterler[] = "=";
$karakterler[] = '+';
$karakterler[] = '-';
$karakterler[] = "_";
$karakterler[] = "/";
}
$max_eleman = count($karakterler) - 1;
$yenisifre = $this->onek;
$l = $this->uzunluk - struzunluk($this->onek);
for ($i = 0;$i<$l;$i++)
{
srand((double)microtime()*1000000);
$yenisifre .= $karakterler[rand(0,$max_eleman)];
}
return $yenisifre;
}
}
$s = new sifre();
echo $s->olustur() . '<br>';
$s->kucukharf = false;
echo $s->olustur() . '<br>';
$s->ozelkarakter = true;
echo $s->olustur() . '<br>';
?>
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Çıktısı

Markdown
3 lines
5D123P5RSF
$+_/@#%&VX
ZYCqsVXBDF
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

 

Sizin Değerli Görüşlerinize İhtiyacımız Var.