Comunidad de diseño web y desarrollo en internet online

Convertir string en número

Citar            
MensajeEscrito el 25 Ene 2009 05:52 pm
Con este código consigo mostrar el valor de la cotización del dolar en Reales extrayendo el valor de aquel de la página del Banco Central de Brasil

Código PHP :

<?
if(!$fp=fopen("http://www4.bcb.gov.br/pec/taxas/batch/taxas.asp?id=txdolar&id=txdolar" ,"r" )) {
    echo "Error al abrir la página de cotización";
    exit;
}
  
$contenido = '';
while(!feof($fp)) { 
   $contenido .= fgets($fp,1024);
}
fclose($fp);

preg_match("/([0-9],[0-9]{2,}).*([0-9],[0-9]{2,})/", $contenido, $salida);
$tasaCompra = $salida[1];
$tasaVenta = $salida[2];
echo "
<h3>Cotización actual del dólar</h3>
Tasa de compra: <b>$tasaCompra</b><br>
Tasa de venda : <b>$tasaVenda</b><br>
</pre>
";
?>


El problema es que preciso de los valores de compra y venta en números y no en strings para poder realizar operaciones matemáticas con ellos. Alguien sabe como transformo esos resultados en números?

Desde ya muchas gracias. Claudio

Por Ishkandar

Claber

303 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 25 Ene 2009 07:42 pm
Coloco a continuación la solución para convertir una string (número) en un número

Código PHP :

<?php

$numero = "2,3546";

$numero = str_replace(".", "", $numero);
$numero = str_replace(",", ".", $numero);

$numero = $numero * 5;

echo $numero;

?>


Claudio

Por Ishkandar

Claber

303 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 26 Ene 2009 12:12 am
Hola, vi que ya solucionaste tu problema, pero como "extra" te digo que eso lo puedes hacer en una sola línea con number_format(), tiene como agregado que puedes definir el número de décimales e incluir separadores de miles... Es muy útil a la hora de mostrar números a los usuarios...

Saludos...

Por KB-27

Claber

301 de clabLevel



 

My very secret HQ

firefox
Citar            
MensajeEscrito el 26 Ene 2009 12:07 pm
Solucioné digamos parcialmente.

Te cuento porque. Ese código hace parte de un service AMFPHP que escrbibi para ser utilizado por el Flash. En el php hice un teste multiplicando ese valor por un número y mandé un echo para ver que salía y la multiplicación fue realizada por lo que asumí que el problema estaba resuelto concluyendo que era un número.

Cuando lleguél al Flash no funcionaba como número y percibí que en el AMFPHP cuando llamaba al call él aparecía entre comillas. Solucioné entonces en el Flash utilizando Number() pero me comí todos los decimales.

Te agradecería entonces si me pudieses mostrar como utilizar la solución que estás proponiendo que por lo que decís me parece la mas práctica.

Desde ya muchas gracias. Claudio

Por Ishkandar

Claber

303 de clabLevel



Genero:Masculino  

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.