3v4l.org

run code in 300+ PHP versions simultaneously
<?php function aa($sayi) { $birim=explode('.', $sayi); $tam = $birim[0]; // sayının virgülden önceki kısmı-tam if(empty($birim[1])) { $birim[1]=0; } $onda = $birim[1]; // sayının virgülden sonraki kısmı-ondalık $birler = array("","bir ","iki","üç","dört","beş","altı","yedi","sekiz","dokuz"); $onlar = array("","on","yirmi","otuz","kırk","elli","altmış","yetmiş","seksen","doksan"); $yuzler = array("","yüz","ikiyüz","üçyüz","dörtyüz","beşyüz","altıyüz","yediyüz","sekizyüz","dokuzyüz"); $deger = array("","","bin","milyon","milyar","trilyon","katrilyon","kentilyon ","seksilyon ","septilyon ","oktilyon "); if(strlen($onda)<2) { $onda = $onda*10; // 56,2 değerini 56,20 yapan kısım. Böylece 56,2 -56 lira 2 kuruş- olmuyor. } $bir=substr($onda,1,1); // birler basamağını alıyor $on=substr($onda,0,1); // onlar basamağını alıyor $ondalik_yazi=$onlar[$on].$birler[$bir]; // ondalık kısmı yazı haline çevirdik artık tam kısım üzerinde çalışacağız. $format_tam_sayi = number_format($tam); // sayı formatlanıyor -> 2658 to 2,658 $tam_sayi = explode(',', $format_tam_sayi); // formatlanan sayı parçalanıp diziye aktarılıyor $count_tam_sayi = count($tam_sayi); // burda dizinin eleman sayısını buluyoruz. // eğer sayımız 4,5,6 haneli ise 687,655 olacağı için dizi 2 elemanlı for($i=0;$i<$count_tam_sayi;$i++) { $eksik =(3-strlen($tam_sayi[$i])); // sayının kaç haneli olduğu ve 3 haneli olması için gereken sayı for($j=0;$j<$eksik;$j++) { $tam_sayi[$i] = "0".$tam_sayi[$i]; // eğer sayı 3 haneli değilse başına 0 ekliyor. } $birl=substr($tam_sayi[$i],2,1); // birler basamağını alıyor $ikil=substr($tam_sayi[$i],1,1); // onlar basamağını alıyor $ucl=substr($tam_sayi[$i],0,1); // yüzler basamağını alıyor $yazi[$i] = $yuzler[$ucl].$onlar[$ikil].$birler[$birl].$deger[$count_tam_sayi-$i]; // sayıyı yazıya çeviren kısım // sayının her 3 hanesi yazıya çevriliyor. 550 bin, milyon, milyar gibi. } $yazi_hali =""; for($i=0;$i<$count_tam_sayi;$i++) { $yazi_hali .= $yazi[$i]; } echo $yazi_hali."-TL ".$ondalik_yazi."-KR"; } echo ss('10001000005');

preferences:
52.16 ms | 402 KiB | 5 Q