Código PHP:
ciertos numeros como los q terminan en ",56" no me funcionan... Ver original
function centimos() { global $importe_parcial; if ($importe_parcial > 0) $num_letra = " con ".decena_centimos($importe_parcial); else $num_letra = ""; return $num_letra; } function unidad_centimos($numero) { switch ($numero) { case 9: { $num_letra = "nueve centavos"; break; } case 8: { $num_letra = "ocho centavos"; break; } case 7: { $num_letra = "siete centavos"; break; } case 6: { $num_letra = "seis centavos"; break; } case 5: { $num_letra = "cinco centavos"; break; } case 4: { $num_letra = "cuatro centavos"; break; } case 3: { $num_letra = "tres centavos"; break; } case 2: { $num_letra = "dos centavos"; break; } case 1: { $num_letra = "un centavo"; break; } } return $num_letra; } function decena_centimos($numero) { if ($numero >= 10) { if ($numero >= 90 && $numero <= 99) { if ($numero == 90) return "noventa centavos"; else if ($numero == 91) return "noventa y un centavos"; else return "noventa y ".unidad_centimos($numero - 90); } if ($numero >= 80 && $numero <= 89) { if ($numero == 80) return "ochenta centavos"; else if ($numero == 81) return "ochenta y un centavos"; else return "ochenta y ".unidad_centimos($numero - 80); } if ($numero >= 70 && $numero <= 79) { if ($numero == 70) return "setenta centavos"; else if ($numero == 71) return "setenta y un centavos"; else return "setenta y ".unidad_centimos($numero - 70); } if ($numero >= 60 && $numero <= 69) { if ($numero == 60) return "sesenta centavos"; else if ($numero == 61) return "sesenta y un centavos"; else return "sesenta y ".unidad_centimos($numero - 60); } if ($numero >= 50 && $numero <= 59) { if ($numero == 50) return "cincuenta centavos"; else if ($numero == 51) return "cincuenta y un centavos"; else return "cincuenta y ".unidad_centimos($numero - 50); } if ($numero >= 40 && $numero <= 49) { if ($numero == 40) return "cuarenta centavos"; else if ($numero == 41) return "cuarenta y un centavos"; else return "cuarenta y ".unidad_centimos($numero - 40); } if ($numero >= 30 && $numero <= 39) { if ($numero == 30) return "treinta centavos"; else if ($numero == 91) return "treinta y un centavos"; else return "treinta y ".unidad_centimos($numero - 30); } if ($numero >= 20 && $numero <= 29) { if ($numero == 20) return "veinte centavos"; else if ($numero == 21) return "veintiun centavos"; else return "veinti".unidad_centimos($numero - 20); } if ($numero >= 10 && $numero <= 19) { if ($numero == 10) return "diez centavos"; else if ($numero == 11) return "once centavos"; else if ($numero == 12) return "doce centavos"; else if ($numero == 13) return "trece centavos"; else if ($numero == 14) return "catorce centavos"; else if ($numero == 15) return "quince centavos"; else if ($numero == 16) return "dieciseis centavos"; else if ($numero == 17) return "diecisiete centavos"; else if ($numero == 18) return "dieciocho centavos"; else if ($numero == 19) return "diecinueve centavos"; } } else return unidad_centimos($numero); } function unidad($numero) { switch ($numero) { case 9: { $num = "nueve"; break; } case 8: { $num = "ocho"; break; } case 7: { $num = "siete"; break; } case 6: { $num = "seis"; break; } case 5: { $num = "cinco"; break; } case 4: { $num = "cuatro"; break; } case 3: { $num = "tres"; break; } case 2: { $num = "dos"; break; } case 1: { $num = "uno"; break; } } return $num; } function decena($numero) { if ($numero >= 90 && $numero <= 99) { $num_letra = "noventa "; if ($numero > 90) $num_letra = $num_letra."y ".unidad($numero - 90); } else if ($numero >= 80 && $numero <= 89) { $num_letra = "ochenta "; if ($numero > 80) $num_letra = $num_letra."y ".unidad($numero - 80); } else if ($numero >= 70 && $numero <= 79) { $num_letra = "setenta "; if ($numero > 70) $num_letra = $num_letra."y ".unidad($numero - 70); } else if ($numero >= 60 && $numero <= 69) { $num_letra = "sesenta "; if ($numero > 60) $num_letra = $num_letra."y ".unidad($numero - 60); } else if ($numero >= 50 && $numero <= 59) { $num_letra = "cincuenta "; if ($numero > 50) $num_letra = $num_letra."y ".unidad($numero - 50); } else if ($numero >= 40 && $numero <= 49) { $num_letra = "cuarenta "; if ($numero > 40) $num_letra = $num_letra."y ".unidad($numero - 40); } else if ($numero >= 30 && $numero <= 39) { $num_letra = "treinta "; if ($numero > 30) $num_letra = $num_letra."y ".unidad($numero - 30);