最简单的乘法不起作用

时间:2013-07-26 06:15:28

标签: php

尝试将INR转换为USD,我的代码为

$url  = "http://www.webservicex.net/CurrencyConvertor.asmx/ConversionRate?FromCurrency=INR&ToCurrency=USD"; 
$usd = simplexml_load_file($url);
echo "1 INR = ".$usd[0] .' USD <br/>';
$uusd=$usd[0];
echo $uusd * 105;

它给我0结果,我不知道为什么?

4 个答案:

答案 0 :(得分:3)

您需要将$ usd [0]转换为float:

$url  = "http://www.webservicex.net/CurrencyConvertor.asmx/ConversionRate?FromCurrency=INR&ToCurrency=USD";
$usd = simplexml_load_file($url);
echo "1 INR = ".$usd[0] .' USD <br/>';
$uusd = floatval($usd[0]);
echo $uusd * 105;

答案 1 :(得分:0)

您尚未将金额转入网络服务。因此,它假设金额为0. 0 INR = 0 USD。

此外,您还对整数值进行操作。即使由于某种原因,Web服务向您返回0.017,当转换为整数时,它仍为0.使用float。

答案 2 :(得分:0)

使用float作为您的值是小数

$uusd=(float)$usd[0];

答案 3 :(得分:0)

$url  = "http://www.webservicex.net/CurrencyConvertor.asmx/ConversionRate?FromCurrency=INR&ToCurrency=USD"; 
$usd = simplexml_load_file($url);
echo "1 INR = ".$usd[0] .' USD <br/>';
$uusd = (float) $usd[0];
echo $uusd * 105;

您需要对float

进行类型转换
$uusd = (float) $usd[0];