Ver Mensaje Individual
  #12 (permalink)  
Antiguo 26/10/2008, 14:41
Avatar de Deschamps
Deschamps
 
Fecha de Ingreso: octubre-2008
Mensajes: 257
Antigüedad: 18 años
Puntos: 8
Respuesta: Convertir nuemero a texto

Si me permites, yo cambiaba la función desglosar que has detallado:

Código PHP:
function desglosar($cifra,$moneda){
    
preg_match_all("/[0-9]/", $cifra, $digitos);
    echo 
"cifra: $cifra moneda: $moneda<br>";
    
//compruebo si la cifra tiene parte decimal o no
    
$decimal = explode(".",$cifra);
    if((
$cifra - $decimal[0]) != 0){
        
$entero = $decimal[0];
        
$cent=$decimal[1];
        echo 
"$entero $moneda con $cent centimos <br>";
    }
    else{
        
$entero = $cifra;
        echo 
"$entero $moneda <br>";
        echo 
"sin céntimos<br>";
    }
} 
Por esta otra, que hace lo mismo pero es mucho más "breve":

Código PHP:
function desglosar( $cifra, $moneda ) {

        
$patron  = "/^(\d+).?(\d*)$/";
        
$entero  = preg_replace( $patron, "$1", $cifra );
        
$decimal = preg_replace( $patron, "$2", $cifra );

        echo 
"$entero $moneda ".($decimal ? "con $decimal centimos" : "sin céntimos")."<br>";
} 
Un saludo!