Özelleştirilmiş Şifre Üretici

<?php
class SifreUretici{
	var $wc;
	var $w;
	var $l;
	var $minl;
	var $maxl;
	function SifreUretici($min, $max, $dizi=NULL){
		if($dizi == NULL){
			$this->wc = array('_','-'); // special chars
			for($i=48; $i<58; $i++){
				array_push($this->wc, chr($i)); // 0-9
			}
			for($i=65; $i<91; $i++){
				array_push($this->wc, chr($i)); // A-Z
      }    
			for($i=97; $i<122; $i++){
				array_push($this->wc, chr($i)); // a-z
      }    
			shuffle($this->wc);
		}
		else{ 
			$this->wc = $dizi; 
		}
		$this->minl = $min;
		$this->maxl = $max;
	}
	function olustur(){
		$this->w = NULL; 
		$this->l = rand($this->minl, $this->maxl); 
		for($i=0; $i<$this->l; $i++){
			$no = rand(0, count($this->wc)-1);
			$this->w .= $this->wc[$no];
		}
		return htmlentities($this->w);
	}
}
$s = new SifreUretici(10, 16); //10-16 karakter arası şifre üretir.
echo $s->olustur();
echo "<br>";
$dizi = array('a','b','1','!'); // Sadece bu karakterlerden 8 haneli şifre üretir
$s = new SifreUretici(8,8,$dizi);
echo $s->olustur();
echo "<br>";
?>

Çıktısı

f_aDfXWCmKK4t
!bb!1ab1

 

Özel Adres Sınıfı

<?php
error_reporting(63);
class ozelAdres {
	var $anahtarlar= array();
	var $taban = '';
	function ozelAdres($taban='') {
		$this->taban = $taban;
	}
	function anahtarAyarla($isim='',$deger='') {
		if ($isim) {
			$this->anahtarlar[$isim] = $deger;
		}
	}
	function anahtarBirak($isim='') {
		if ($isim) {
			unset($this->anahtarlar[$isim]);
		}
	}
	function tabanAyarla($deger) {
		$this->taban = $deger;
	}
	function anahtarAl($isim) {
		return $this->anahtarlar[$isim];
	}
	function dize() {
		$r = $this->taban;
		if (count($this->anahtarlar)>0) $r .= '?';
		$tarr = array();
		foreach ($this->anahtarlar as $anahtar=>$deger) {
			$u[] = $anahtar.'='.(urlencode($deger));
		}
		$r .= implode('&',$u);
		return $r;
	}
	function kodla($isim='') {
		return "<a href=\"".$this->dize()."\">$isim</a>";
	}
}
$url = new ozelAdres($_SERVER['PHP_SELF']);
$url->anahtarAyarla('par1','Test');
$url->anahtarAyarla('par2',2);
echo $url->dize()."<br>";
echo $url->kodla('test')."<br>";
$url->anahtarBirak('par1');
echo $url->dize()."<br>";
echo "'par2' degeri ".$url->anahtarAl('par2')."<br>";
?>

Çıktısı

/index.php?par1=Test&par2=2
<a href="/index.php?par1=Test&par2=2">test</a>
/index.php?par2=2
'par2' degeri 2