Fixer IO Döviz Kuru Çevirme Sınıfı

<?php
class Kurlar{
	function Donustur($miktar,$bundan,$buna){
		$html= implode("",file('http://api.fixer.io/latest'));	
		$veri=json_decode($html,true);
		if(($bundan) === "EUR"){
			return $veri["rates"][$buna]*($miktar);
		}elseif(($buna) === "EUR"){
			return 1/$veri["rates"][$bundan]*($miktar);
		}else{
			return $veri["rates"][$buna]*(1/$veri["rates"][$bundan])*($miktar);
		}
	}
}
$kur = new Kurlar();
echo $kur->Donustur(1, 'USD', 'TRY');
?>

Çıktısı

4.474492827434

 

Yahoo Finance Döviz Kuru Çevirme Sınıfı

<?php
class Kurlar{
	function Donustur($miktar,$bundan,$buna){
		$url="http://adsynth-ofx-quotewidget-prod.herokuapp.com/api/1";
		$ch = curl_init();
		curl_setopt($ch, CURLOPT_URL,$url);
		curl_setopt($ch, CURLOPT_POST, 1);
		curl_setopt($ch, CURLOPT_POSTFIELDS, '{"method":"spotRateHistory","data":{"base":"'.$bundan.'","term":"'.$buna.'","period":"week"}}');
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type:application/json'));
		curl_setopt($ch, CURLOPT_REFERER, "https://widget-yahoo.ofx.com/");
		$html = curl_exec ($ch);
		curl_close ($ch);
		$veri=json_decode($html,true);
		return $veri["data"]["CurrentInterbankRate"]*$miktar;
	}
}
$kur = new Kurlar();
echo $kur->Donustur(1, 'USD', 'TRY');
?>

Çıktısı

4.4143

 

Sayfa Yüklenme Süresi Hesaplamak

<?php
  class yuklemesuresi{
   var $baslangic;
   var $bitis;
   function baslat(){
		list($sunucu, $saniye) = explode(" ",microtime());
    $this->baslangic = ((float)$sunucu + (float)$saniye);
   }
   function bitir(){
    list($sunucu, $saniye) = explode(" ",microtime());
    $this->bitis = ((float)$sunucu + (float)$saniye);
   }
   function cikti(){
    $sure = $this->bitis - $this->baslangic;
    return number_format($sure, 6);
   }
  }
	$sure = new yuklemesuresi();
	$sure->baslat();
	$sure->bitir();
	echo "Bu sayfa ".$sure->cikti()."sn'de yüklenmiştir.";
?>

Çıktısı

Bu sayfa 0.000039sn'de yüklenmiştir.

 

Açılır Pencere Sınıfı

<?php
class PencereAdres{
	var $adres = "https://www.ulusanyazilim.com";
	var $resim = "";
	var $ipucu = "";
	var $aciklama = "Ulusan Yazılım";
	var $araccubugu = "no";
	var $kaydirmacubugu = "no";
	var $genislik = 500;
	var $yukseklik = 300;
	var $sol = 200;
	var $ust = 200;
	var $parametre = "";		// açılır pencereye extra parametre göndermek için
	var $pencerestili = 0;
	function goster(){
		if($this->pencerestili == 0){
			echo "<a href='#' onClick=\"window.open('".$this->adres.$this->parametre."','','toolbar=".$this->araccubugu.",scrollbars=".$this->kaydirmacubugu.",width=".$this->genislik.",height=".$this->yukseklik.",left=".$this->sol.",top=".$this->ust."')\">";
		}elseif($this->pencerestili == 1){
			echo "<a href='".$this->adres.$this->parametre."' target='_blank'>"; 
		}
		echo $this->aciklama;
		if ($this->resim != ""){
			echo"<img src='".$this->resim."' ";
			if ($this->ipucu != "") echo"title='".$this->ipucu."' ";
			echo"border=0>";
		}
		echo"</a>";
	}
}
$w=new PencereAdres;
$w->goster();
?>

Çıktısı öne çıkan görseldeki gibidir.

TCMB 2018 Güncel Döviz Kurları Sınıfı v2

<?php 
class TCMBDovizKurlari{//USDTRY EURTRY
 var $kurlar;
 public function __construct(){
 
 if(!$tcmb= @file("http://www.tcmb.gov.tr/kurlar/".date("Ym")."/".date("dmY").".xml")){
 $sonCuma = new DateTime("last friday"); // Hata sonu tatiliyse son cumayı alır.
 $tcmb= file("http://www.tcmb.gov.tr/kurlar/".$sonCuma->format("Ym")."/".$sonCuma->format("dmY").".xml");
 }
 $this->kurlar[]=$tcmb[7];
 $this->kurlar[]=$tcmb[8];
 $this->kurlar[]=$tcmb[43];
 $this->kurlar[]=$tcmb[44];
 }
 public function usd_alis(){return $this->kurlar[0];}
 public function usd_satis(){return $this->kurlar[1];}
 public function eur_alis(){return $this->kurlar[2];}
 public function eur_satis(){return $this->kurlar[3];}
 
}
$a=new TCMBDovizKurlari;
echo $a->usd_alis()."<br>";
echo $a->usd_satis()."<br>";
echo $a->eur_alis()."<br>";
echo $a->eur_satis()."<br>";

Çıktısı

4.4402 
4.4482 
5.2412 
5.2507

 

Zamanlayıcı Sınıfı ile Sayfa Yüklenme Zamanı

<?php
class Zamanlayici {
   var $baslat     = 0;
   var $durdur      = 0;
   var $gecenzaman   = 0;
   function Zamanlayici( $baslat = true ) {
      if ( $baslat )
         $this->baslat();
   }
   function baslat() {
      $this->baslat = $this->_zamanal();
   }
   function durdur() {
      $this->durdur    = $this->_zamanal();
      $this->gecenzaman = $this->_hesapla();
   }
   function gecenzaman() {
      if (!isset($gecenzaman))
         $this->durdur();

      return $this->gecenzaman;
   }
   function reset() {
      $this->baslat   = 0;
      $this->durdur    = 0;
      $this->gecenzaman = 0;
   }
   function _zamanal() {
      $mikrozaman = microtime();
      $mikrozaman = explode( " ", $mikrozaman );
      return $mikrozaman[1] + $mikrozaman[0];
   }
   function _hesapla() {
      return $this->durdur - $this->baslat;
   }
}
  $zamanlayici = new Zamanlayici();
?>
<?php echo $zamanlayici->gecenzaman();?> saniye<br>
<?php echo $zamanlayici->gecenzaman();?> saniye<br>
<?php echo $zamanlayici->gecenzaman();?> saniye<br>

Çıktısı

0.00014710426330566 saniye
0.00020098686218262 saniye
0.00024795532226562 saniye

 

Http Post İsteklerine Erişim Sınıfı

<?php    
header('Content-Type: text/html; charset=utf-8');
class Yayin {
	private static $ornek;
	public static function ornekAl() {
			if (self::$ornek == null) {
					self::$ornek = new Yayin();
			}
			return self::$ornek;
	}
	protected function __construct(){
			foreach($_POST as $key => $value ){
					$this->$key = $value;
			}
	}
	public function __get($isim){
			if (!isSet($this->$isim)){
					$this->$isim= '';
			}
	}
}
$yayin = Yayin::ornekAl();
$deger = $yayin->deger;
$artis = $yayin->artis;
if ($artis == null) {
	$artis = 1;
}
$deger += $artis;
?>
<html>
    <body>
        <form method="POST">
            Arttırılacak Değer: <input type="text" name="deger" value="<?php echo $deger;?>"/>
            <br/>Artış: <input type="text" name="artis" value="<?php echo $artis;?>"/>
            <br/><input type="submit" value="Arttır"/>
        </form>
    </body>
</html>

Çıktısı öne çıkan görseldeki gibidir.

Doğru Yazım Sınıfı – Bunu mu Demek İstediniz?

<?php
class DogruYazim{
	private $sorgu;
	public $dil = 'tr-TR',
	$arama = 'http://www.google.com.tr/search?hl=#dil#&q=#kelime#&oq=#kelime#',
	$duzelt;
	public function ara($sorgu){
		$this->sorgu = $sorgu;
		$adres=str_replace(array('#dil#','#kelime#'),array($this->dil,urlencode($this->sorgu)),$this->arama);
		$sonuc = file_get_contents($adres);
		preg_match('/<span class="spell(.*?)>(.*?)<b><i>(.*?)<\/i><\/b>/si',$sonuc,$cikti);
		if(isset($cikti[3])){
			$this->duzelt = $cikti[3];
			return true;
		}
		return false;
	}
}
$DogruYazim = new DogruYazim();
$DogruYazim->dil = 'tr-TR';
if($DogruYazim->ara('yanlız')){
   echo $DogruYazim->duzelt;
}
?>

Çıktısı

yalnız

 

Diziyi Metin Olarak Depolama ve Geri Dönüştürme

<?php
class diziDepola{
	function dizidenMetine($dizi,$baskila=0,$doldur='',$sekme=1) {  
		$t=null;
		if (!$doldur) {  
			$metinDondur='array(';  
		}  
		$n=rand();  
		$calis[$n]=0;  
		for($i=0;$i<$sekme;$i++) { 
			$t.="\t"; 
		}  
		foreach ($dizi as $anahtar => $deger) {  
				if (!$calis[$n]) {  
		$c='';  
				} else {  
		$c=', ';  
				} 
				$calis[$n]++;  
				if (is_array($deger)) {  
		$metinDondur.=$c."\n".$t.'\''.$anahtar.'\' => array('.dizidenMetine($deger,$baskila,1,$sekme+1);  
		continue 1;  
				}  
				$metinDondur.=$c."\n".$t.'\''.$anahtar.'\' => \''.$deger.'\'';  
		}	  
		if (!$doldur) {  
				$metinDondur.=');'."\n";  
		} else {  
				$metinDondur.=')';  
		}  
		if ($baskila) {  
				return gzcompress($metinDondur, 9);  
		} else {  
				return $metinDondur;  
		}  
	}  
	function metindenDiziye($dizitxt,$baskicoz=0) {
		if (!$dizitxt) {return array();}
		if ($baskicoz) {  
			eval('$return_array = '.gzuncompress($dizitxt));  
			return $return_array;  
		} else {  
			if (!eval('$return_array = '.$dizitxt)) {
				print '<h2>metindenDiziye HATA</h2>';
				print $dizitxt;exit;
			}
			return $return_array;  
		}  
	}  
}
$diziDepola = new diziDepola;
$baskila = 1;// (0 veya 1)
$dizi=array("merhaba nasilsiniz",1,23,6);
$dizi_text = $diziDepola->dizidenMetine($dizi,$baskila);
echo $dizi_text."<br>";
$baskicoz = 1;// (0 veya 1)
$dizi = $diziDepola->metindenDiziye($dizi_text,$baskicoz);
print_r($dizi);
?>

Çıktısı

xÚK,*J¬ÔàâT7PW°µSPÏM-ÊHLJTÈK,ÎÌ)ÎÌˬR×QJB¤ !<#ÏÈÂ5†pÍÔ5­¹T•
Array ( [0] => merhaba nasilsiniz [1] => 1 [2] => 23 [3] => 6 )

 

Torrent Dosyaları Bilgi Ayrıştırma Sınıfı

<?php
class TorrentBilgi{
	var $indeks;
	var $kaynak;
	var $finaldizi;
	function islemler() {
		$karakter = $this->kaynak[$this->indeks];
		if (is_numeric($karakter)) return $this->islemler_metin();
		if ($karakter == 'i') {
			++$this->indeks;
			return $this->islemler_sayi();
		}
		if ($karakter=='l') {
			++$this->indeks;
			return $this->islemler_liste();
		}
		if ($karakter=='d') {
			++$this->indeks;
			return $this->islemler_sozluk();
		}
		die("ANA İŞLEM: BEKLENMEYEN KARAKTER (pozisyon: $this->indeks): ".$karakter);
	}
	function islemler_sayi() {
		$mevcut_karakter='';
		$numara = "";
		while (($mevcut_karakter = $this->kaynak[$this->indeks]) != 'e') {
			++$this->indeks;
			$numara .= $mevcut_karakter;
		}
		++$this->indeks;
		return (int) $numara;
	}
	function islemler_metin(){
		$boyut ="";
		while($this->kaynak[$this->indeks] != ':') {
			$boyut .= $this->kaynak[$this->indeks];
			++$this->indeks;
		}
		$i = ++$this->indeks;
		$this->indeks += $boyut;
		$x= substr($this->kaynak, $i, $boyut);
		return $x;
	}
	function islemler_liste() {
		$dondur_liste = array();
		while ($this->kaynak[$this->indeks] != 'e') {
			$this->indeks1 = $this->indeks;
			$dondur_liste[] = $this->islemler();
			if ($this->indeks1 == $this->indeks) die("LİSTEDE SONSUZ DÖNGÜ");
		}
		++$this->indeks;
		return $dondur_liste;
	}
	function islemler_sozluk() {
		$dondur_sozluk = array();
		while ($this->kaynak[$this->indeks] != 'e') {
			$this->indeks1 = $this->indeks;
			$dondur_sozluk[$this->islemler_metin()] = $this->islemler();
			if ($this->indeks1 == $this->indeks) die("SÖZLÜKTE SONSUZ DÖNGÜ");
		}
		++$this->indeks;
		return $dondur_sozluk;
	}
	function ayristir($dosyaisim) {
		$this->kaynak = file_get_contents($dosyaisim);
		$this->indeks = 0;
		$dosyaboyut = strlen($this->kaynak);
		$this->finaldizi=array();
		while($this->indeks<$dosyaboyut) {
			$this->indeks1 = $this->indeks;
			$islemler=$this->islemler();
			unset($islemler["info"]["pieces"]);
			$this->finaldizi[] =$islemler;
			if ($this->indeks1 == $this->indeks) die("KÖK LİSTESİNDE SONSUZ DÖNGÜ");
		}
		$this->kaynak = '';
		return $this->finaldizi;
	}
}
$x = new TorrentBilgi();
print_r($x->ayristir("http://www.ulusanyazilim.com/wp-content/uploads/download-manager-files/uTorrent_3.5.3.44396.exe.torrent"));
?>

Çıktısı

Array
(
    [0] => Array
        (
            [announce] => http://tracker.zamunda.net/announce.php?passkey=fa20455fa921c755acba1144f60cc2f0
            [created by] => uTorrent/3.5.3
            [creation date] => 1523690447
            [encoding] => UTF-8
            [info] => Array
                (
                    [length] => 58602944
                    [name] => uTorrent_3.5.3.44396.exe
                    [piece length] => 65536
                )

        )

)