Converting whole number to word using PHP language
Since a boredom strikes, here is a simple code for converting a whole number to words in PHP language:
- Supports 1 to 999,999,999
<?php
$result = numbertoWord(5);
function numbertoWord($number) {
$words = array();
$ones = ['one','two','three','four','five','six','seven','eight','nine'];
$tens = ['ten','eleven','twelve','thirteen','fourteen','fifteen','sixteen','seventeen','eighteen','nineteen'];
$hundredToMillions =['twenty','thirty','forty','fifty','sixty','seventy','eighty','ninety','hundred','thousand','hundred thousand','million'];
if($number > 0) {
if($number < 10) {
$words[] = $ones[$number-1];
}
if($number > 9 && $number < 20) {
$words[] = $tens[$number - 10];
}
if($number < 100 && $number > 19) {
$firstNumber = substr($number,0,1);
$words[] = $hundredToMillions[$firstNumber-2];
$words[] = numbertoWord( substr($number,1,strlen($number)) );
}
if($number > 99 && $number < 1000) {
$firstNumber = substr($number,0, 1);
$words[] = $ones[$firstNumber-1];
$words[] = $hundredToMillions[8];
$words[] = numbertoWord( substr($number,1, strlen($number)) );
}
if($number > 999 & $number < 100000) {
$firstNumber = strlen($number) != 5 ? substr($number, 0, 1) : null;
$words[] = $firstNumber ? $ones[$firstNumber-1] : numbertoWord( substr($number, 0, 2) );
$words[] = $hundredToMillions[9];
$from = $firstNumber ? 1 : 2;
$to = strlen($number);
$words[] = numbertoWord( substr($number, $from, $to) );
}
if($number > 99999 & $number < 1000000) {
$firstNumber = strlen($number) != 6 ? substr($number, 0, 1) : null;
$words[] = $firstNumber ? $ones[$firstNumber-1] : numbertoWord( substr($number, 0, 3) );
$words[] = $hundredToMillions[9];
$from = $firstNumber ? 1 : 3;
$to = strlen($number);
$words[] = numbertoWord( substr($number, $from, $to) );
}
if($number > 999999 & $number < 1000000000) {
$firstNumber = strlen($number) != 9 ? substr($number, 0, 1) : null;
$words[] = $firstNumber ? $ones[$firstNumber-1] : numbertoWord( substr($number, 0, 3) );
$words[] = $hundredToMillions[11];
$from = $firstNumber ? 1 : 3;
$to = strlen($number);
$words[] = numbertoWord( substr($number, $from, $to) );
}
}
return implode( empty($words) ? "" : " ",$words);
}
No comments:
Post a Comment