Türk Parasının Yazıyla Okunuş Sınıfı

<?php
class paraOku{
	public $bir = array("","bir","iki","üç","dört","beş","altı","yedi","sekiz","dokuz");
	public $on = array("","on","yirmi","otuz","kırk","elli","atmış","yetmiş","seksen","doksan");
	public $ek = array("","yüz","bin","milyon","milyar","trilyon","katrilyon","kentilyon","seksilyon","septilyon","oktilyon");
	function cevir($para){
		$ayir=explode(".",$para);
		$lira=$this->okut($ayir[0])." Türk Lirası";
		$kurus="";
		if(count($ayir)==2){
			$kurus=($ayir[1]!="")?",".$this->okut($ayir[1])." Kuruş":"";
		}
		return str_replace("  "," ",$lira.$kurus);
	}
	function uclu($rakam){
		if(strlen($rakam)==1){ return $this->bir[substr($rakam,0,1)];}
		if(strlen($rakam)==2){ return $this->on[substr($rakam,0,1)]."".$this->bir[substr($rakam,1,1)];}
		if(strlen($rakam)==3){ 
			if(substr($rakam,0,1) > 0){
				if(substr($rakam,0,1) == 1){
					$yuzler=$this->ek[1];
				}else{
					$yuzler=$this->bir[substr($rakam,0,1)].$this->ek[1];
				}
			}else{
				$yuzler=$this->bir[substr($rakam,0,1)];
			}
			$m=$yuzler."".$this->on[substr($rakam,1,1)]."".$this->bir[substr($rakam,2,1)];
			return $this->ilkharfbuyut($m);
		}
	}
	function ilkharfbuyut($metin){
		mb_internal_encoding('UTF-8');
		return mb_strtoupper(mb_substr($metin,0,1)).mb_substr($metin,1,mb_strlen($metin)-1);
	}
	function okut($n){
		$m=null;
		$ns=explode(',',number_format($n));
		for($i=0;$i<count($ns);$i++){
			$j=(count($ns)-$i);
			if($j > 1){
				if($ns[$i] == 1 and $this->ek[$j] =="bin"){
					$m.=$this->ek[$j]." ";
				}else{
					if($ns[$i] !="000"){
						$m.=$this->uclu($ns[$i])."".$this->ek[$j]." ";
					}
				}
			}else{
				$m.=$this->uclu($ns[$i])."";
			}
		}
		return str_replace("  "," ",$this->ilkharfbuyut($m));
	}
}
$po=new paraOku();
echo $po->cevir(3432);
echo "<br>";
echo $po->cevir(140200.99);

Çıktısı

Üçbin Dörtyüzotuziki Türk Lirası
Yüzkırkbin Ikiyüz Türk Lirası,Oniki Kuruş

 

Arapça Türkçe Harflerin ve Kelimelerin Okunuşu

Not: Okunuş tüm sesli harfleri içermez. Bu yüzden gerçek değil, programsal okunuşu oluşturur.

<?php
header('Content-Type: text/html; charset=utf-8');
class Oku{
	var $turkce=['b','z','t','m','t','r','z','n','s','z','a','h','c','s','ğ','h','g','f','h','s','ş',
		'd','d','k','e','e','i','ü','i','e','e','y','t','y','l','v','en','ün','in','e','ü','i','~','o'];
	var $arapca=['\u0628','\u0630','\u0637','\u0645','\u062a','\u0631','\u0638','\u0646',
		'\u062b','\u0632','\u0639','\u0647','\u062c','\u0633','\u063a','\u062d','\u0642','\u0641','\u062e','\u0635',
		'\u0634','\u062f','\u0636','\u0643','\u0623','\u0621','\u0626','\u0624','\u0625','\u0622','\u0627','\u0649',
		'\u0629','\u064a','\u0644','\u0648','\u064b','\u064c','\u064d','\u064e','\u064f','\u0650','\u0651','\u0652'];
	var $onceki=["lr","nb","nl","nr","nm","ny","ns","nt","nd","nc","nz","nş","nk","ng","nf","bm","gk"];
	var $sonraki=["rr","mb","ll","rr","mm","yy","s","t","d","c","z","ş","k","g","f","mm","kk"];
	function arapcaTurkce($metin){
		$unicode=str_replace('"',"",json_encode($metin));
		$turkce=str_replace($this->arapca,$this->turkce,$unicode);
		return str_replace($this->onceki,$this->sonraki,$turkce);
	}
	function turkceArapca($metin){
		mb_internal_encoding('UTF-8');
		$metin=mb_strtolower($metin);
		$metin=str_replace(["u","o","ö","ı",],["ü","ü","ü","i"],$metin);
		$metin=str_replace($this->sonraki,$this->onceki,$metin);
		$metin=str_replace($this->turkce,$this->arapca,$metin);
		return json_decode('"'.$metin.'"');
	}
}
$cevir=new Oku;
echo $cevir->arapcaTurkce("ؤلؤنثعن ىعنذئلئم");
echo "<br>";
echo $cevir->turkceArapca("Ulusan Yazılım");
echo "<br>";

Çıktısı

ؤلؤنثعن ىعنذئلئم
ülüsan yazilim