我有API的乘法代码。
foreach($cXML->results->row as $sale)
{
$subId = $sale->subid;
$status = $sale->status;
$transId = "ad".$sale->OrderID;
$amount = $sale->total_commission;
$createdDate= $sale->date;
$subIdExplode = explode('-', $subId);
$userId = $subIdExplode[0];
$retailerId = $subIdExplode[1];
$retailerQuery = mysql_query("select * from db_retailers where retailer_id = '".$retailerId."'");
$retailer = mysql_fetch_array($retailerQuery);
if(trim($retailer['member_top']) != "")
{
$commision = $retailer['coef']*$amount;
}
}
输入示例;
$ commision应计算为1.50。但是,它打印为1.20
我从所有其他输入调查中发现了这种差异的原因,因为某些原因没有采取$ amount的分数部分。
我无法找出任何可能性。
答案 0 :(得分:0)
尽管来自XML的值被视为带点的2.50,但我怀疑它们可能是2,50。
所以我添加了代码$amount = str_replace(',', '.', $amount);
,问题解决了。