PHP ile Fatura Tutarını Yazıya Çevirme

Paylaş
 

Merhaba arkadaşlar bu yazımızda PHP ile fatura tutarını yazı ile yazmayı öğreneceğiz.Aşağıda bulunan fonksiyonu kendi fonksiyon sayfanıza ekleyerek sayfanız da ki tutarı yazıya rahatlıkla çevirebilirsiniz. Fonksiyonun sonunda yer alan değer döndürme satırından yazının nasıl gönderileceğini değiştirebilirsiniz. Buyrunuz fonksiyon:

function YaziyaCevir($sayi, $kurusbasamak, $parabirimi, $parakurus, $karakter) {

$b1 = array("", "bir", "iki", "üç", "dört", "beş", "altı", "yedi", "sekiz", "dokuz");
$b2 = array("", "on", "yirmi", "otuz", "kırk", "elli", "altmış", "yetmiş", "seksen", "doksan");
$b3 = array("", "yüz", "bin", "milyon", "milyar", "trilyon", "katrilyon");


$say1="";
$say2 = ""; 
$sonuc = "";

$sayi = str_replace(",", ".",$sayi); 

$nokta = strpos($sayi,"."); 

if ($nokta>0) { 

$say1 = substr($sayi,0, $nokta); 
$say2 = substr($sayi,$nokta, strlen($sayi)); 

} else {
$say1 = $sayi; 
}

$son;
$w = 1; 
$sonaekle = 0; 
$kac = strlen($say1); 
$sonint; 
$uclubasamak = 0; 
$artan = 0; 
$gecici;

if ($kac > 0) { 

for ($i = 0; $i < $kac; $i++) {

$son = $say1[$kac - 1 - $i]; 
$sonint = $son; 

if ($w == 1) { 

$sonuc = $b1[$sonint] . $sonuc;

} else if ($w == 2) { 

$sonuc = $b2[$sonint] . $sonuc;

} else if ($w == 3) { 

if ($sonint == 1) {
$sonuc = $b3[1] . $sonuc;
} else if ($sonint > 1) {
$sonuc = $b1[$sonint] . $b3[1] . $sonuc;
}
$uclubasamak++;
}

if ($w > 3) { 

if ($uclubasamak == 1) {

if ($sonint > 0) {
$sonuc = $b1[$sonint] . $b3[2 + $artan] . $sonuc;
if ($artan == 0) { 
$sonuc = str_replace($b1[1] . $b3[2], $b3[2],$sonuc);
}
$sonaekle = 1; 
} else {
$sonaekle = 0;
}
$uclubasamak++;

} else if ($uclubasamak == 2) {

if ($sonint > 0) {
if ($sonaekle > 0) {
$sonuc = $b2[$sonint] . $sonuc;
$sonaekle++;
} else {
$sonuc = $b2[$sonint] . $b3[2 + $artan] . $sonuc;
$sonaekle++;
}
}
$uclubasamak++;

} else if ($uclubasamak == 3) {

if ($sonint > 0) {
if ($sonint == 1) {
$gecici = $b3[1];
} else {
$gecici = $b1[$sonint] . $b3[1];
}
if ($sonaekle == 0) {
$gecici = $gecici . $b3[2 + $artan];
}
$sonuc = $gecici . $sonuc;
}
$uclubasamak = 1;
$artan++;
}

}

$w++; 

}
}

if ($sonuc=="") { 
$parabirimi = "";
}

$say2 = str_replace(".", "",$say2);
$kurus = "";

if ($say2!="") { 

if ($kurusbasamak > 3) { 
$kurusbasamak = 3;
}
$kacc = strlen($say2);
if ($kacc == 1) { 
$say2 = $say2."0"; 
$kurusbasamak = 2;
}
if (strlen($say2) > $kurusbasamak) { 
$say2 = substr($say2,0, $kurusbasamak);
}

$kac = strlen($say2); 
$w = 1;

for ($i = 0; $i < $kac; $i++) { 

$son = $say2[$kac - 1 - $i]; 
$sonint = $son; 

if ($w == 1) { 

if ($kurusbasamak > 0) {
$kurus = $b1[$sonint] . $kurus;
}

} else if ($w == 2) { 
if ($kurusbasamak > 1) {
$kurus = $b2[$sonint] . $kurus;
}

} else if ($w == 3) { 
if ($kurusbasamak > 2) {
if ($sonint == 1) {
$kurus = $b3[1] . $kurus;
} else if ($sonint > 1) {
$kurus = $b1[$sonint] . $b3[1] . $kurus;
}
}
}
$w++;
}
if ($kurus=="") { 
$parakurus = "";
} else {
$kurus = $kurus . " ";
}
$kurus = $kurus . $parakurus; 
}
$sonuc = $karakter . $sonuc . " " . $parabirimi . " " . $kurus . $karakter;
return $sonuc;
}

Fonksiyonumuza aşağıdaki gibi veri gönderiyoruz.

echo YaziyaCevir("1234567.89",2,"TL","Kr","#");

İlk olarak tutar, virgülden sonra kaç karakter, para birimi, kuruş kısaltması ve son olarak başa ve sona eklenecek karakteri gönderiyoruz. Bu kadar kısa arkadaşlar kolay gelsin 🙂

Teşekkürler  jteklif.com!

Bu yazı 216 kere okundu.
  • Site Yorum

Bir yorum bırak

YAZAR HAKKINDA

Bağımsız çalışan, çok düşünen, kodlamaya aşık ve güldürmeyi seven bir developer...
SPONSOR BAĞLANTILAR
SPONSOR BAĞLANTILAR

Facebookta Takip Edin