1

我有一些 PHP 代码正在划分从 mySQL 数据库中提取的两个数字,但是它计算不正确。当我单独回显 $comm 时$total_fix,数字是正确的。但是,当我回应两者的划分时,这不是正确的答案。这两个数字都是DECIMAL(10,0)数据库中的数据类型。下面是PHP代码

$percent_comm = $comm / $total_fix;
$percent_comm = number_format($percent_comm, 2, '.', ',');                     
echo "<td align=\"center\">".$percent_comm."</td>";

在这里$comm = 2700$total_fix = 75$percent_comm正在计算0.03它应该是什么时候36

4

2 回答 2

1

根据我在您的评论中看到的内容,由于格式的原因,您将 $comm 变量作为带逗号的字符串获取。我建议将格式化字符串转换为有效数字。

同时我会推荐这个:

 $comm = '2,700';
 $comm = str_replace(',','',$comm);

从您的号码中删除逗号。

于 2013-05-15T15:06:52.117 回答
0

从变量名称中,您想知道$comm的百分比$total_fix。您的代码几乎是这样做的:您正确划分$comm/$total_fix,它正确地给您0.027. 但是当你手动检查时你得到了它: 36 是除法的结果2700/75(即,$total_fix/$comm

但是要获得百分比,请将除法的结果乘以 100:

(75.0 / 2700) * 100 = 2.7 percent.

就是您的代码应该得到的。

于 2013-05-15T14:44:09.950 回答