<?php
// Staring straight up into the sky ... oh my my
/* Возвращает соответствующую числу форму слова: 1 рубль, 2 рубля, 5 рублей */
function inclineWord($number, $word1, $word2, $word5)
{
/* DIY */
}
/*
Преобразует числа от 0 до 999 в текст. Параметр $isFemale равен нулю,
если мы считаем число для мужского рода (один рубль),
и 1 — для женского (одна тысяча)
*/
function smallNumberToText($number, $isFemale)
{
0 => 'ноль', 10 => 'десять', 100 => 'сто',
1 => 'один', 11 => 'одиннадцать', 20 => 'двадцать', 200 => 'двести',
2 => 'два', 12 => 'двенадцать', 30 => 'тридцать', 300 => 'триста',
3 => 'три', 13 => 'тринадцать', 40 => 'сорок', 400 => 'четыреста',
4 => 'четыре', 14 => 'четырнадцать', 50 => 'пятьдесят', 500 => 'пятьсот',
5 => 'пять', 15 => 'пятнадцать', 60 => 'шестьдесят', 600 => 'шестьсот',
6 => 'шесть', 16 => 'шестнадцать', 70 => 'семьдесят', 700 => 'семьсот',
7 => 'семь', 17 => 'семнадцать', 80 => 'восемьдесят', 800 => 'восемьсот',
8 => 'восемь', 18 => 'восемнадцать', 90 => 'девяносто', 900 => 'девятьсот',
9 => 'девять', 19 => 'девятнадцать'
);
1 => 'одна',
2 => 'две'
);
return $spelling[$number];
}
$hundreds = floor($number / 100) * 100; $tens = floor($number % 100 / 10) * 10; $units = $number % 10;
$last2Digits = $tens + $units;
if($last2Digits == 11 || $last2Digits == 12 || $last2Digits == 13 || $last2Digits == 14 || $last2Digits == 15 || $last2Digits == 16 || $last2Digits == 17 || $last2Digits == 18 || $last2Digits == 19){
array_push($str, $spelling[$hundreds], $spelling[$last2Digits]); }
else{
if($hundreds > 0){array_push($str, $spelling[$hundreds]);} if($tens > 0){array_push($str, $spelling[$tens]);} if($units > 0){array_push($str, $spelling[$units]);} }
}
function numberToText($number)
{
$result = smallNumberToText($number, 0);
return $result;
}
/* Вызовем функцию несколько раз */
$amount1 = 1030;
$text1 = numberToText($amount1);
echo "На вашем счету {$text1}\n";
$amount2 = 111;
$text2 = numberToText($amount2);
echo "На вашем счету {$text2}\n";
$amount3 = 91;
$text3 = numberToText($amount3);
echo "На вашем счету {$text3}\n";
$text4 = numberToText($amount4);
echo "На вашем счету {$text4}\n";
PD9waHAKLy8gU3RhcmluZyBzdHJhaWdodCB1cCBpbnRvIHRoZSBza3kgLi4uIG9oIG15IG15CmVycm9yX3JlcG9ydGluZygtMSk7Cm1iX2ludGVybmFsX2VuY29kaW5nKCd1dGYtOCcpOwoKLyog0JLQvtC30LLRgNCw0YnQsNC10YIg0YHQvtC+0YLQstC10YLRgdGC0LLRg9GO0YnRg9GOINGH0LjRgdC70YMg0YTQvtGA0LzRgyDRgdC70L7QstCwOiAxINGA0YPQsdC70YwsIDIg0YDRg9Cx0LvRjywgNSDRgNGD0LHQu9C10LkgKi8KZnVuY3Rpb24gaW5jbGluZVdvcmQoJG51bWJlciwgJHdvcmQxLCAkd29yZDIsICR3b3JkNSkKewogICAgLyogRElZICovCn0KCi8qCiAgICDQn9GA0LXQvtCx0YDQsNC30YPQtdGCINGH0LjRgdC70LAg0L7RgiAwINC00L4gOTk5INCyINGC0LXQutGB0YIuINCf0LDRgNCw0LzQtdGC0YAgJGlzRmVtYWxlINGA0LDQstC10L0g0L3Rg9C70Y4sIAogICAg0LXRgdC70Lgg0LzRiyDRgdGH0LjRgtCw0LXQvCDRh9C40YHQu9C+INC00LvRjyDQvNGD0LbRgdC60L7Qs9C+INGA0L7QtNCwICjQvtC00LjQvSDRgNGD0LHQu9GMKSwgCiAgICDQuCAxIOKAlCDQtNC70Y8g0LbQtdC90YHQutC+0LPQviAo0L7QtNC90LAg0YLRi9GB0Y/Rh9CwKSAKKi8KZnVuY3Rpb24gc21hbGxOdW1iZXJUb1RleHQoJG51bWJlciwgJGlzRmVtYWxlKQp7CgogICAgJHNwZWxsaW5nID0gYXJyYXkoCiAgICAgICAgMCAgID0+ICAn0L3QvtC70YwnLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMCAgPT4gICfQtNC10YHRj9GC0YwnLCAgICAgICAxMDAgPT4gICfRgdGC0L4nLAogICAgICAgIDEgICA9PiAgJ9C+0LTQuNC9JywgICAgICAgICAxMSAgPT4gICfQvtC00LjQvdC90LDQtNGG0LDRgtGMJywgICAgICAyMCAgPT4gICfQtNCy0LDQtNGG0LDRgtGMJywgICAgIDIwMCA9PiAgJ9C00LLQtdGB0YLQuCcsCiAgICAgICAgMiAgID0+ICAn0LTQstCwJywgICAgICAgICAgMTIgID0+ICAn0LTQstC10L3QsNC00YbQsNGC0YwnLCAgICAgICAzMCAgPT4gICfRgtGA0LjQtNGG0LDRgtGMJywgICAgIDMwMCA9PiAgJ9GC0YDQuNGB0YLQsCcsCiAgICAgICAgMyAgID0+ICAn0YLRgNC4JywgICAgICAgICAgMTMgID0+ICAn0YLRgNC40L3QsNC00YbQsNGC0YwnLCAgICAgICA0MCAgPT4gICfRgdC+0YDQvtC6JywgICAgICAgIDQwMCA9PiAgJ9GH0LXRgtGL0YDQtdGB0YLQsCcsCiAgICAgICAgNCAgID0+ICAn0YfQtdGC0YvRgNC1JywgICAgICAgMTQgID0+ICAn0YfQtdGC0YvRgNC90LDQtNGG0LDRgtGMJywgICAgIDUwICA9PiAgJ9C/0Y/RgtGM0LTQtdGB0Y/RgicsICAgIDUwMCA9PiAgJ9C/0Y/RgtGM0YHQvtGCJywKICAgICAgICA1ICAgPT4gICfQv9GP0YLRjCcsICAgICAgICAgMTUgID0+ICAn0L/Rj9GC0L3QsNC00YbQsNGC0YwnLCAgICAgICA2MCAgPT4gICfRiNC10YHRgtGM0LTQtdGB0Y/RgicsICAgNjAwID0+ICAn0YjQtdGB0YLRjNGB0L7RgicsCiAgICAgICAgNiAgID0+ICAn0YjQtdGB0YLRjCcsICAgICAgICAxNiAgPT4gICfRiNC10YHRgtC90LDQtNGG0LDRgtGMJywgICAgICA3MCAgPT4gICfRgdC10LzRjNC00LXRgdGP0YInLCAgICA3MDAgPT4gICfRgdC10LzRjNGB0L7RgicsICAgIAogICAgICAgIDcgICA9PiAgJ9GB0LXQvNGMJywgICAgICAgICAxNyAgPT4gICfRgdC10LzQvdCw0LTRhtCw0YLRjCcsICAgICAgIDgwICA9PiAgJ9Cy0L7RgdC10LzRjNC00LXRgdGP0YInLCAgIDgwMCA9PiAgJ9Cy0L7RgdC10LzRjNGB0L7RgicsCiAgICAgICAgOCAgID0+ICAn0LLQvtGB0LXQvNGMJywgICAgICAgMTggID0+ICAn0LLQvtGB0LXQvNC90LDQtNGG0LDRgtGMJywgICAgIDkwICA9PiAgJ9C00LXQstGP0L3QvtGB0YLQvicsICAgICA5MDAgPT4gICfQtNC10LLRj9GC0YzRgdC+0YInLAogICAgICAgIDkgICA9PiAgJ9C00LXQstGP0YLRjCcsICAgICAgIDE5ICA9PiAgJ9C00LXQstGP0YLQvdCw0LTRhtCw0YLRjCcgICAgCiAgICApOwoKICAgICRmZW1hbGVTcGVsbGluZyA9IGFycmF5KAogICAgICAgIDEgPT4gJ9C+0LTQvdCwJywKICAgICAgICAyID0+ICfQtNCy0LUnCiAgICApOwoKICAgICRzdHIgPSBhcnJheSgpOwogICAgCiAgICBpZihhcnJheV9rZXlfZXhpc3RzKCRudW1iZXIsICRzcGVsbGluZykpewogICAgCXJldHVybiAkc3BlbGxpbmdbJG51bWJlcl07CiAgICB9CgogICAgJGh1bmRyZWRzID0gZmxvb3IoJG51bWJlciAvIDEwMCkgKiAxMDA7CiAgICAkdGVucyA9IGZsb29yKCRudW1iZXIgJSAxMDAgLyAxMCkgKiAxMDsKICAgICR1bml0cyA9ICRudW1iZXIgJSAxMDsKICAgICRsYXN0MkRpZ2l0cyA9ICR0ZW5zICsgJHVuaXRzOwogICAgCiAgICB2YXJfZHVtcCgkaHVuZHJlZHMpOwogICAgdmFyX2R1bXAoJHRlbnMpOwogICAgdmFyX2R1bXAoJHVuaXRzKTsKICAgIAogICAgaWYoJGxhc3QyRGlnaXRzID09IDExIHx8ICRsYXN0MkRpZ2l0cyA9PSAxMiB8fCAkbGFzdDJEaWdpdHMgPT0gMTMgfHwgJGxhc3QyRGlnaXRzID09IDE0IHx8ICRsYXN0MkRpZ2l0cyA9PSAxNSB8fCAkbGFzdDJEaWdpdHMgPT0gMTYgfHwgJGxhc3QyRGlnaXRzID09IDE3IHx8ICRsYXN0MkRpZ2l0cyA9PSAxOCB8fCAkbGFzdDJEaWdpdHMgPT0gMTkpewogICAgCWFycmF5X3B1c2goJHN0ciwgJHNwZWxsaW5nWyRodW5kcmVkc10sICRzcGVsbGluZ1skbGFzdDJEaWdpdHNdKTsKICAgIH0KICAgIGVsc2V7CiAgICAJaWYoJGh1bmRyZWRzID4gMCl7YXJyYXlfcHVzaCgkc3RyLCAkc3BlbGxpbmdbJGh1bmRyZWRzXSk7fQogICAgCWlmKCR0ZW5zID4gMCl7YXJyYXlfcHVzaCgkc3RyLCAkc3BlbGxpbmdbJHRlbnNdKTt9CiAgICAJaWYoJHVuaXRzID4gMCl7YXJyYXlfcHVzaCgkc3RyLCAkc3BlbGxpbmdbJHVuaXRzXSk7fQogICAgfQogICAgcHJpbnRfcigkc3RyKTsKICAgICRzdHIgPSBpbXBsb2RlKCRzdHIsICIgIik7CglyZXR1cm4gdHJpbSgkc3RyKTsKfQoKZnVuY3Rpb24gbnVtYmVyVG9UZXh0KCRudW1iZXIpCnsKCiAgICAkcmVzdWx0ID0gc21hbGxOdW1iZXJUb1RleHQoJG51bWJlciwgMCk7CiAgICByZXR1cm4gJHJlc3VsdDsKfQoKLyog0JLRi9C30L7QstC10Lwg0YTRg9C90LrRhtC40Y4g0L3QtdGB0LrQvtC70YzQutC+INGA0LDQtyAqLwokYW1vdW50MSA9IDEwMzA7CiR0ZXh0MSA9IG51bWJlclRvVGV4dCgkYW1vdW50MSk7CgplY2hvICLQndCwINCy0LDRiNC10Lwg0YHRh9C10YLRgyB7JHRleHQxfVxuIjsKCiRhbW91bnQyID0gMTExOwokdGV4dDIgPSBudW1iZXJUb1RleHQoJGFtb3VudDIpOwoKZWNobyAi0J3QsCDQstCw0YjQtdC8INGB0YfQtdGC0YMgeyR0ZXh0Mn1cbiI7CgokYW1vdW50MyA9IDkxOwokdGV4dDMgPSBudW1iZXJUb1RleHQoJGFtb3VudDMpOwoKZWNobyAi0J3QsCDQstCw0YjQtdC8INGB0YfQtdGC0YMgeyR0ZXh0M31cbiI7CgokYW1vdW50NCA9IG10X3JhbmQoMSwgOTk5OTk5OTkpOwokdGV4dDQgPSBudW1iZXJUb1RleHQoJGFtb3VudDQpOwoKZWNobyAi0J3QsCDQstCw0YjQtdC8INGB0YfQtdGC0YMgeyR0ZXh0NH1cbiI7Cg==