Postado originalmente por
KiritoKaiba
olá galera estou com problemas para montar um código que preciso entregar ate domingo, preciso fazer um código em php que mostre o numero digitado por extenso usando substr, eu cheguei perto, mas ainda está havendo bugs, quando escrevo "111", ele escreve "cento e e um", ou quando usou qual numero com zero ele escreve o zero, se eu digitar por exemplo 109, ele escreve "cento e e nove", ou 100 "cento e e zero" e assim vai, não sei como resolver, vou postar o código aki
<?php
$unidade = array("zero","um","dois","três","quatro","cinco","seis","sete","oito","nove","dez","onze","doze","treze","quatorze","quinze","dezesseis","dezessete","dezoito","dezenove");
$dezenas = array("","","vinte","trinta","quarenta","cinquenta","sessenta","setenta","oitenta","noventa","cem");
$centenas= array("","cento","duzentos","trezentos","quatrocentos","quinhentos","seisssentos","setessentos","oitossentos","novessentos","mil");
$numero= $_REQUEST["txtnumero"];
if ($numero <20){
print $unidade[$numero];
}
else {
if ($numero <100) {
$exdezenas = substr($numero,0,1);
$exunidade = substr($numero,1,1);
print $dezenas[$exdezenas] ." e ". $unidade[$exunidade];
} else {
$excentenas = substr($numero,0,1);
$exdezenas = substr($numero,1,1);
$exunidade = substr($numero,2,1);
print $centenas[$excentenas] ." e ". $dezenas[$exdezenas] ." e ". $unidade[$exunidade];
}}
?>