Basit Metin İşleme Sınıfı

<?php
class paragraf {
  private $metin="";
  function paragraf($metin) {
    $this->metin = $metin;
  }
  function kelime_say() {
    return sizeof(array_filter(explode(" ",str_replace([".",","]," ",$this->metin))));
  }
  function karakter_say() {
    return strlen($this->metin);
  }
  function rakam_say() {
    $i=0;
		foreach(str_split($this->metin) as $anahtar => $value) {
			if(is_numeric($value)) $i++;
		}
		return $i;
	}
  function metin_tipi() {
	if(is_string($this->metin)) return "metin";
	elseif(is_int($this->metin)) return "tam sayı";
	elseif(is_float($this->metin)) return "sayısal";
	elseif(is_bool($this->metin)) return "mantıksal";
	else return false;
  }
  function baslik_yap($baslik=0) {
    $metin = str_split($this->metin);
	if($baslik<=sizeof($metin)) {
	  if(mb_strtoupper($metin[$baslik])) {
	    $this->metin = implode($metin);
		return $this->metin;
	  }
	  else {
	  	return false;
	  }
	}
	else {
	  return false;
	}
  }
  function karakter_al($metin) {
    $metin = str_split($metin);
    foreach($metin as $anahtar1 => $deger) {
  	      $karakterler[] = $deger;
	    }
	  
    return $karakterler;
    }
}
$p=new paragraf("Ben 1 yaziyim.Eger sende 1 yaziysan,haber ver.");
echo $p->kelime_say()."<br>";
echo $p->karakter_say()."<br>";
echo $p->rakam_say()."<br>";
echo $p->baslik_yap()."<br>";
print_r($p->karakter_al("saat"));
echo "<br>";
echo $p->metin_tipi()."<br>";
$p=new paragraf(1);
echo $p->metin_tipi()."<br>";
$p=new paragraf(1.05);
echo $p->metin_tipi()."<br>";
$p=new paragraf(true);
echo $p->metin_tipi()."<br>";
?>

Çıktı

9
46
2
Ben 1 yaziyim.Eger sende 1 yaziysan,haber ver.
Array ( [0] => s [1] => a [2] => a [3] => t ) 
metin
tam sayı
sayısal
mantıksal

 

Kronometre Sınıfı

<?php
class Kronometre {
	static $zaman=array();
	public static function ayarla($n='0') {
		list($msn, $sn) = explode(chr(32), microtime());
		self::$zaman[$n]=$msn+$sn;
	}
	public static function al($n='0') {
		list($msn, $sn) = explode(chr(32), microtime());
		$simdi=$msn+$sn;
		return round($simdi-self::$zaman[$n], 12)."<br/>";
	}
}
Kronometre::ayarla(1);
Kronometre::ayarla(2);
/*
...bazı php kodları
*/
echo "Geçen süre: ".Kronometre::al(1);
echo "Geçen süre: ".Kronometre::al(2);

Çıktısı

Geçen süre: 0.000207901001
Geçen süre: 0.00014090538

 

Form Giriş ve Denetim Sınıfı

<?php
Class girisKontrol{
	var $form=null;
	function __construct(){
		$this->form.='<form method="post" action="">';
	}
	function metinKontrol($name,$value,$tut){
		$this->form.='<input type="text" name="'.$name.'" value="'.$value.'" placeholder="'.$tut.'">';
	}
	function sifreKontrol($name,$value,$tut){
		$this->form.='<input type="password" name="'.$name.'" value="'.$value.'" placeholder="'.$tut.'">';
	}
	function metinKutusuKontrol($name,$value,$tut){
		$this->form.='<textarea name="'.$name.'" placeholder="'.$tut.'">'.$value.'</textarea>';
	}
	function onayKutusuKontrol($name,$value){
		$this->form.='<input type="checkbox" name="'.$name.'" value="'.$value.'">';
	}
	function radyoKontrol($name,$value){
		$this->form.='<input type="radio" name="'.$name.'" value="'.$value.'">';
	}
	function butonKontrol($type,$name,$value,$tut){
		$this->form.='<input type="'.$type.'" name="'.$name.'" value="'.$value.'" placeholder="'.$tut.'">';
	}
	function secenekEkle($name){
		$this->form.='<option value="">'.$name.'</option>';
	}
	function listeKontrol($value){
		$this->form.='<select name="">';
		foreach($value as $v){
			$this->form.=$this->secenekEkle($v);
		}	
		$this->form.='</select>';
	}
	function yazdir(){
		$this->form.='</form>';
		return $this->form;
	}
}
$gK = new girisKontrol;
$gK->metinKontrol("abc","","Bir metin giriniz");
$gK->sifreKontrol("abc","","Şifre");
$gK->metinKutusuKontrol("abc","","Birşeyler Yazınız");
$gK->listeKontrol(["Ankara","Aksaray"]);
$gK->onayKutusuKontrol("abcd","");
$gK->radyoKontrol("abc","");
$gK->butonKontrol("button","gonder","Tıkla","");
echo $gK->yazdir();

Çıktısı

<form method="post" action="">
   <input type="text" name="abc" value="" placeholder="Bir metin giriniz"><input type="password" name="abc" value="" placeholder="Şifre">
   <textarea name="abc" placeholder="Birşeyler Yazınız"></textarea>
   <select name="">
      <option value="">Ankara</option>
      <option value="">Aksaray</option>
   </select>
   <input type="checkbox" name="abcd" value=""><input type="radio" name="abc" value=""><input type="button" name="gonder" value="Tıkla" placeholder="">
</form>

 

İzin Verilen Sorguları Global Değişken Yapma Sınıfı

<?php
class globalDegisken {
  function globalDegisken ($kabulEdilenDegisken,$sorgu) {
    if (is_array($kabulEdilenDegisken)) {
      $c=count ($kabulEdilenDegisken);
      for ($i=0;$i<$c;$i++) {
				global $$kabulEdilenDegisken[$i];
				if( isset( $_POST[$kabulEdilenDegisken[$i]] ) and ($sorgu == "ALL" or $sorgu == "POST") ) {
					$$kabulEdilenDegisken[$i]=$_POST[$kabulEdilenDegisken[$i]];
				} else if ( isset( $_GET[$kabulEdilenDegisken[$i]]) and ($sorgu == "ALL" or $sorgu == "GET") ) {
					$$kabulEdilenDegisken[$i]=$_GET[$kabulEdilenDegisken[$i]];
				} else {
					$$kabulEdilenDegisken[$i]='';
				}
      }
      return true;
    } else {
      return false;
    }
  }
}
$kabulEdilenDegisken = array("id","user");
$obj = new globalDegisken($kabulEdilenDegisken,"ALL");
print_r($id);
echo "<br>";
print_r($user);
echo "<br>";
print_r($test);
?>

Örnekte id ve user değeri kabul edilen değer olduğu için sonuç verecek,test ise hata verecektir.

index.php?id=1&user=admin&test=a  Çıktısı

1
admin
Notice: Undefined variable: test in index.php on line 28

 

Dizileştirilmiş Değerleri Metin Olarak Sıkıştırma

<?php
header('Content-Type: text/html; charver=utf-8');
class sGzip{
	public static function ver($veri){
		if ($veri){
			$cikti=addslashes(gzcompress(serialize($veri),9));
		}else{
			$cikti=FALSE;
		}
		return $cikti;
	}
	public static function al($veri){
		if($veri){
			$cikti=unserialize(gzuncompress(stripslashes($veri)));
		}else{
			$cikti=FALSE;
		}
		return $cikti;
	}
}
$i=new sGzip;
$io=$i->ver([["Merhaba"],["Dünya'lı"]]);
print_r($i->ver($io));
echo "<br>";
print_r($i->al($io));
?>

Çıktısı

x�F\0��s:62:\"x�K�2��δ2�N�2�0��̭�|S�2���k3��� ��\\\\�ɫLT�9�(_\\0��\\\\\";J��

Array ( [0] => Array ( [0] => Merhaba ) [1] => Array ( [0] => Dünya'lı ) )

 

Objeyi XML’ye Çevirme Sınıfı

<?php
class objeXML {
   private $obje;
   public function __construct($objeler) {
      $this->obje = new DOMDocument("1.0", "UTF8");
      $ana = $this->obje->createElement(get_class($objeler));
      foreach($objeler as $anahtar=>$deger) {
        $bagla = $this->baglanti($anahtar, $deger);
        if($bagla != NULL) $ana->appendChild($bagla);
      }
      $this->obje->appendChild($ana);
   }
  private function baglanti($anahtar, $deger){
  	$bagla = NULL;
  	if(is_string($deger) || is_numeric($deger) || is_bool($deger) || $deger == NULL) {
  	  if($deger == NULL) $bagla = $this->obje->createElement($anahtar);
			else $bagla = $this->obje->createElement($anahtar, (string)$deger);
  	}else{
			$bagla = $this->obje->createElement($anahtar);
			if($deger != NULL) {
				foreach($deger as $anahtar=>$deger) {
					$on = $this->baglanti($anahtar, $deger);
					if($on != NULL)  $bagla->appendChild($on);
				}
			}
  	}
		return $bagla;
  }
   public function __toString() {
    return $this->obje->saveXML();
  }
}
$ornekveri=(object)["yazar"=>(object)["ulusan"=>(object)["yazilim"=>"ulusan"]]];
$x=new objeXML($ornekveri);
echo $x;
?>

Çıktısı

<?xml version="1.0" encoding="UTF8"?>
<stdClass>
    <yazar>
        <ulusan>
            <yazilim>ulusan</yazilim>
        </ulusan>
    </yazar>
</stdClass>

 

Zamana ve Eklere Göre Rastgele Şifre Üretme Sınıfı

<?php
class sifreUret{
  var $gecici;
  function sifreUret($uzunluk=6, $ek="kelime"){
    $sifre=$ek.date("s:H:m:i:s");
    $this->gecici=substr(md5($sifre), 2, $uzunluk);
  }
  function get_sifre(){
    return $this->gecici;
  }
}

$p=new sifreUret();
$p->sifreUret(8);           
print $p->get_sifre();
echo "<br>";
$p->sifreUret(8, "benimkelimem");           
print $p->get_sifre();
?>

Çıktısı

7fe03153
c65ebee1

 

Metin İşleme ve Format Dönüştürme Sınıfı

<?php 
class metinDonustur {
  var $_deger = '';
  function metinDonustur($deger) {
    $this->_deger = $deger;
  }
  function degerVer($deger) {
    $this->_deger = $deger;
  }
  function degerAl() {
    return $this->_deger;
  }
  function HTML() {
    return htmlspecialchars($this->_deger);
  }
}
$m=new metinDonustur("merhaba<br>");
echo $m->degerAl();
$m->degerVer("ulusan<br>");
echo $m->degerAl();
echo $m->HTML();
?>

Çıktısı

merhaba
ulusan
ulusan<br>

Spam Botlar için Email Adresini Şifreleme Sınıfı

<?php 
class mailSifrele{
	function cr($email){
		$mail=null;
		for ($x=0;$x<strlen($email);$x++) {
			$mail .= "&#".ord(substr($email,$x)).";"; 
		}
		echo "<a href=\"mailto:$mail\">".$mail."</a>";
  }    
}

$sifrele = new mailSifrele();
echo $sifrele->cr("ulusanyazilim@gmail.com");
echo "<br>";
echo $sifrele->cr("zeynelulusan@gmail.com");
echo "<br>";
?>

Botlar için Çıktı

<a href="mailto:&#117;&#108;&#117;&#115;&#97;&#110;&#121;&#97;&#122;&#105;&#108;&#105;&#109;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;">&#117;&#108;&#117;&#115;&#97;&#110;&#121;&#97;&#122;&#105;&#108;&#105;&#109;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;</a><br><a href="mailto:&#122;&#101;&#121;&#110;&#101;&#108;&#117;&#108;&#117;&#115;&#97;&#110;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;">&#122;&#101;&#121;&#110;&#101;&#108;&#117;&#108;&#117;&#115;&#97;&#110;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;</a><br>

Gerçek Kullanıcılar için Çıktı

<a href="mailto:ulusanyazilim@gmail.com">ulusanyazilim@gmail.com</a><br>
<a href="mailto:zeynelulusan@gmail.com">zeynelulusan@gmail.com</a><br>

Komut Satırı Yürütmesini İşleyen Sınıf

<?php
class calistir {
	public function komut($komut) {
		$komut .= ' 2>&1';
		$devral = popen($komut, 'r');
		$kayit = '';
		while (!feof($devral)) {
			$line = fread($devral, 1024);
			$kayit .= $line;
		}
		pclose($devral);
		return $kayit;
	}
}
$c=new calistir;
echo $c->komut("DIR");
?>

Çıktısı

Volume in drive C has no label. Volume Serial Number is XXXX-1234 Directory of C:\Program Files\EasyPHP-DevServer\data\localweb 06.05.2018 23:22
. 06.05.2018 23:22
.. 06.05.2018 23:19 310 index.php 1 File(s) 310 bytes 2 Dir(s) 26.303.090.688 bytes free