hai all,

i want to convert indian rupees into words, is there any function in php or any useful links
are appreciated..

how to convert indian rupees to words

for ex
458=>four hundred fifty eight

this want for any number upto billions..

Recommended Answers

All 11 Replies

function no_to_words($no)
{   
 $words = array('0'=> '' ,'1'=> 'one' ,'2'=> 'two' ,'3' => 'three','4' => 'four','5' => 'five','6' => 'six','7' => 'seven','8' => 'eight','9' => 'nine','10' => 'ten','11' => 'eleven','12' => 'twelve','13' => 'thirteen','14' => 'fouteen','15' => 'fifteen','16' => 'sixteen','17' => 'seventeen','18' => 'eighteen','19' => 'nineteen','20' => 'twenty','30' => 'thirty','40' => 'fourty','50' => 'fifty','60' => 'sixty','70' => 'seventy','80' => 'eighty','90' => 'ninty','100' => 'hundred &','1000' => 'thousand','100000' => 'lakh','10000000' => 'crore');
    if($no == 0)
        return ' ';
    else {
	$novalue='';
	$highno=$no;
	$remainno=0;
	$value=100;
	$value1=1000;       
            while($no>=100)    {
                if(($value <= $no) &&($no  < $value1))    {
                $novalue=$words["$value"];
                $highno = (int)($no/$value);
                $remainno = $no % $value;
                break;
                }
                $value= $value1;
                $value1 = $value * 100;
            }       
          if(array_key_exists("$highno",$words))
              return $words["$highno"]." ".$novalue." ".no_to_words($remainno);
          else {
             $unit=$highno%10;
             $ten =(int)($highno/10)*10;            
             return $words["$ten"]." ".$words["$unit"]." ".$novalue." ".no_to_words($remainno);
           }
    }
}
echo no_to_words(12345401);

Thanks manoj your code is success

superub dude.......
it works.......
tnx..

Thanks a tonn Manoj... i really needed it. Your code is 100% successful and easy to understand... Once again THANKS :D

thanks bro its realy helpful

Not working in decimal format

In my project I did it in VB.Net. But I do not know PHP. If you like I can post it, but it is in vb2010. You would convert it in PHP.

Member Avatar for diafol

Unless you have a better php solution can we leave this thread alone? It died 3 years ago and was resurrected by spammers and inane 'thank you' posts.

How to convert Only lakhs & Crores
Like 426000 => 4.26 Lakhs

Thanks it works fine and save me lot of time

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.