<?php

error_reporting(-1);
mb_internal_encoding('utf-8');

/* 
    Преобразует числа от 0 до 999 в текст. Параметр $isFemale равен нулю, 
    если мы считаем число для мужского рода (один рубль), 
    и 1 — для женского (одна тысяча) 
*/

function smallNumberToText($number, $isFemale) {

	$spelling = array(

        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  =>  'девятнадцать'    
    );
    
	$femaleSpelling = array(
		1   =>  'одна',        2   =>  'две'
    );

	$lastDigit = $number % 10;
	$last2Digits = $number % 100;
	$hundred = $number - $last2Digits;
    $decade = $last2Digits - $lastDigit;
    
    foreach($spelling as $key => $val) {
		if ($number == $key) {
    		return $spelling[$number];
    	} elseif (($number == $key + $lastDigit) && ($number >= 20) && ($number < 100)) {
    		return $val . ' ' . $spelling[$lastDigit];
    	} elseif (($number == $key + $last2Digits) && ($number >= 100) && ($number < 1000)) {
    		return $val . ' ' . $spelling[$last2Digits];
    	} elseif (($last2Digits > 20) && ($last2Digits <= 99) && ($number >= 100) && ($number < 1000)) {
    		return $spelling[$hundred] . ' ' . $spelling[$decade] . ' ' . $spelling[$lastDigit];
    	}
	}
}
echo smallNumberToText(1010, $isFemale);