如何在PHP echo中添加数学?

时间:2016-06-23 19:29:59

标签: php mysql sql math

我有一个网站,除了最低价格外,一切运作良好。我的意思是所有价格都会根据所选货币而不是最低价格进行更改。

最低价格是基于美元而非其他货币正确显示,我的意思是如果我们将货币兑换成欧元,那么最低价格仍然是美元的默认货币。

在我的Sql数据库中,我有一个表 pt_currencie 和列评分

在我的会议室页面上,显示以下PHP代码的最低价格:

<?php echo $lowestPrice; ?>

并且在控制器中,代码是:

$this->data['lowestPrice'] = $this->hotels_lib->bestPrice($this->data['hotel']->id);

这里是设置userdata和更改货币

      function changeCurrency($id){
        $this->db->where('id',$id);
        $rs = $this->db->get('pt_currencies')->result();
        $this->session->set_userdata('currencycode', $rs[0]->code);
        $this->session->set_userdata('currencysymbol', $rs[0]->symbol);
        $this->session->set_userdata('currencyname', $rs[0]->name);
        $this->session->set_userdata('currencyrate', $rs[0]->rate);
  }

}

如何根据所选货币(费率)显示$ lowestPrice? 我应该在上面的代码中添加什么公式,根据所选货币显示最低价格?

1 个答案:

答案 0 :(得分:0)

好的,如果我正确地理解你的问题,你将不得不将数据库中的货币汇率转换为php数组,然后使用php确定最低价格:

$query = "SELECT rate FROM pt_currencie";
$result = mysqli_query($db_conn, $query);

$rate_arr = mysqli_fetch_fields($result);
$currLowestPrice = $lowestPrice;
foreach ($rate_arr as $rate) {
    $tmpLowestPrice = $lowestPrice * $rate;
    if($currlowestPrice > $tmpLowestPrice)
        $currLowestPrice = $tmpLowestPrice;
}

所以这应该至少给你在$ currLowestPrice中的最低价格,在for循环结束时调整到货币汇率(上面的代码可能需要为你的程序调整一点)