PHP СУММА ПРОПИСЬЮ
Часто при разработке приложений на PHP может возникнуть необходимость выводить числа в текстовом формате, например, сумму прописью. Для этого можно использовать готовую функцию, написанную на PHP.
Пример кода:
function num2str($num) {
    $nul='ноль'; $ten=array( 
    array('','один','два','три','четыре','пять','шесть','семь','восемь','девять'), 
    array('десять','одиннадцать','двенадцать','тринадцать','четырнадцать','пятнадцать','шестнадцать', 'семнадцать','восемнадцать','девятнадцать'), 
    array('','десять','двадцать','тридцать','сорок','пятьдесят','шестьдесят', 'семьдесят','восемьдесят','девяносто'), 
    array('','сто','двести','триста','четыреста','пятьсот','шестьсот','семьсот', 'восемьсот','девятьсот') ); 
    if(!$num) return $nul; $rub = array('','рубль','рубля','рублей'); 
    $kop = array('','копейка','копейки','копеек'); $out = array(); 
    if(is_numeric($num)) { 
        $num = sprintf("%012.2f", $num); 
        $num = explode('.',$num); 
        for($i=0;$i            $out[] = substr($num[0], $i, 3); 
        } 
        $ok = array(false,false,true,true,true,true,true,true,true,true); 
        for($i=count($out)-1;$i>=0;$i--) { 
            $tmp = ''; $cnt = str_pad($out[$i],3,'0',STR_PAD_LEFT); 
            if($cnt>99) { $tmp .= $ten[3][substr($cnt,0,1)]; $cnt = substr($cnt,1,2); $ok[0] = true; } 
            if($cnt>9) { 
                if($cnt<20) { $tmp .= $ten[1][$cnt-10]; $cnt = 0; $ok[1] = true; } 
                else { $tmp .= $ten[2][substr($cnt,0,1)]; $cnt = substr($cnt,1,1); $ok[2] = true; } 
            } 
            if($cnt>0) { $tmp .= $ten[0][$cnt]; $ok[3] = true; } 
            if($tmp) { $tmp .= ' '.$this->morph($out[$i],$rub); } 
            if(($i>0)&&($out[$i])) $tmp .= ' '.$this->morph($out[$i],$rub); 
            $out[$i] = $tmp; 
        } 
        $out[count($out)-2] .= ' '.($ok[2] && !$ok[1] ? 'десять ' : '').$this->morph($out[count($out)-2],array('тысяча','тысячи','тысяч')); 
        $out[count($out)-1] .= ' '.$this->morph($out[count($out)-1],$rub); 
        if($num[1]>0) { 
            $cnt = substr(sprintf("%02d",$num[1]),0,2); 
            $tmp = ''; 
            if($cnt>9) { 
                if($cnt<20) { $tmp .= $ten[1][$cnt-10]; $cnt = 0; } 
                else { $tmp .= $ten[2][substr($cnt,0,1)]; $cnt = substr($cnt,1,1); } 
            } 
            if($cnt>0) { $tmp .= ' '.$ten[0][$cnt]; } 
            $out[count($out)-1] .= ' '.$tmp.' '.$this->morph($num[1],$kop); 
        } 
        return trim(preg_replace('/ {2,}/', ' ', join(' ',array_reverse($out)))); 
    } 
    else return false; 
} 
$num = 1234567.98; 
echo num2str($num); // выводится "один миллион двести тридцать четыре тысячи пятьсот шестьдесят семь рублей девяносто восемь копеек" 
 
ПОДРОБНО! PHP Вывод данных из массива на страницу
Числа прописью в Excel быстро и без вспомогательных инструментов!
Число в excel как преобразовать и написать прописью
как ... написать сумму прописью без макросов в Excel
Сума прописом українською Excel
#47 Уроки PHP - Учим язык PHP, Передача параметров методом GET на языке PHP
Excel урок 30. Сумма прописью
#33 Уроки PHP - Учим язык PHP, Обход массива циклом for и foreach на языке PHP
ООП для начинающих PHP. Магические методы get,set,clone

















