我正在使用一个使用百分比设置的 JS 进度条:0 到 100(百分比)。当 160,000 人签署某个表格时,我需要进度条达到 100%。我在 PHP 变量中设置了签名者的总数,但我不知道如何进行数学运算以将其转换为适合 1 - 100 的百分比(以便进度条实际上反映了 160,000 的目标)。
我可能在这里遗漏了一些明显的东西(我讨厌任何与数字相关的东西)所以这里有人知道如何做到这一点吗?
百分比计算是基础数学:
$total = 160000;
$current = 12345;
$percentage = $current/$total * 100;
只是
percentage = number/160000 * 100
如果 N 是目标,X 是到目前为止已签名的人数,则百分比为 (X/N)*100。
...您不能将数字转换为百分比?
$percent = ($currentNumber / 160000) * 100;
如果您不想要浮动答案,您可以随意投射或舍入它。
160,000/160,000
= 1
=100%
160,000/2
= 0.5
=50%
鉴于此,计算应该很容易。分子是完成的数量,分母是“目标”——要完成的总数。
因此,一旦您达到 80,000,您将完成 50% 并且您的进度条将呈现为这样。
如果您需要处理较小的数字,请将所有内容除以 100 或 1000,您可以减少相关庄园中数字的大小。
160,000 / 1000 = 160
160 将是您的分母。所以50%
会是这样80/160
。这有意义吗?
做微软风格:
current = 12345
percentage = 100*(1-exp(-current/100000))