使用PHP进行计算的正确方法?

使用PHP进行计算的正确方法?,php,Php,我需要计算增值税,然后回显结果。我还需要计算增值税,回显结果 它还需要四舍五入到小数点后2位 基本上它不起作用,计算不起任何作用,只是显示: 29.17英镑(含增值税) 29.1700英镑(不含增值税) 我不知道正确的语法,这就是为什么我在这里问,谢谢 代码: 在这一行 $price_inc_vat = $price_ex_vat + ($price_inc_vat * $vat_rate / 100); 您正在调用一个尚未存在的变量“$price\u inc\u vat”。 在使用该变量之前

我需要计算增值税,然后回显结果。我还需要计算增值税,回显结果

它还需要四舍五入到小数点后2位

基本上它不起作用,计算不起任何作用,只是显示:

29.17英镑(含增值税) 29.1700英镑(不含增值税)

我不知道正确的语法,这就是为什么我在这里问,谢谢

代码:

在这一行

$price_inc_vat = $price_ex_vat + ($price_inc_vat * $vat_rate / 100);
您正在调用一个尚未存在的变量“$price\u inc\u vat”。 在使用该变量之前,您可能需要为其赋值

现在要将其四舍五入到小数点后2位,只需执行ff:

$price_inc_vat = 29.17;
$price_inc_vat = $price_ex_vat + ($price_inc_vat * $vat_rate / 100);
$price_inc_vat = round($price_inc_vat, 2);

尝试在计算中使用
price\u ex\u vat
,即从数据库行读取的价格,而不是试图计算$price\u inc\u vat的值

$req4 = $con->query("SELECT price, vat_rate FROM product WHERE product_id='$prodId'");
$row4 = $req4->fetch_row();

$price_ex_vat = $row4[0];
$vat_rate = $row4[1];

// if $vat_rate is 0.2
$price_inc_vat = round( $price_ex_vat + ($price_ex_vat * $vat_rate), 2 );

// if $vat_rate = 20
$price_inc_vat = round( $price_ex_vat + ($price_ex_vat * ($vat_rate/100)), 2 );

是学习如何用PHP做事的好资源。StackOverflow更适合于帮助解决在尝试实现某项功能时出现的问题。这在当前有效吗?如果是,你的目标是什么?要清理它,或者添加小数点,并四舍五入到最接近的百分之一?您的计算可能是正确的,尽管您刚刚忘记在$price\u inc\u vat中插入一个值,您使用的是此行($price\u inc\u vat*$vat\u rate/100);这将给您一个错误,因为$price_inc_vat不作为变量存在。首先尝试设置一个值。增值税是如何存储的?是20还是0.2?试着设置$price_inc_vat=29.17;在你的问题中得到了这个值。正如我提到的,这只是一个例子。他可以将其更改为他想要的值!伙计,振作起来。好吧,如果你和提问者都相信这是合乎逻辑的,那么老天保佑我们!
$price_inc_vat = 29.17;
$price_inc_vat = $price_ex_vat + ($price_inc_vat * $vat_rate / 100);
$price_inc_vat = round($price_inc_vat, 2);
$req4 = $con->query("SELECT price, vat_rate FROM product WHERE product_id='$prodId'");
$row4 = $req4->fetch_row();

$price_ex_vat = $row4[0];
$vat_rate = $row4[1];

// if $vat_rate is 0.2
$price_inc_vat = round( $price_ex_vat + ($price_ex_vat * $vat_rate), 2 );

// if $vat_rate = 20
$price_inc_vat = round( $price_ex_vat + ($price_ex_vat * ($vat_rate/100)), 2 );