我有一些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
答案 0 :(得分:1)
从我在你的评论中看到的,由于格式的原因,你将$ comm变量作为带逗号的字符串。我建议将格式化的字符串转换为有效的数字。
虽然我会推荐这个:
$comm = '2,700';
$comm = str_replace(',','',$comm);
从您的号码中删除逗号。
答案 1 :(得分:0)
从变量名称中,您希望$comm
知道$total_fix
的百分比。您的代码几乎执行此操作:您正确划分$comm/$total_fix
,并且它正确地为您提供0.027
。但是当你手工检查时,你得到了它:36是2700/75
的分割结果(即$total_fix/$comm
)
但要获得一个百分比,乘以除以100的结果:
(75.0 / 2700) * 100 = 2.7 percent.
那是你的代码应该得到的东西。