php - php - 如何计算比例不同于 0-100 的百分比?
问题描述
我想检查百分比$current
从$minimum
到$maximum
$minimum = 0.5
$maximum = 5.5
$current = 2.5
我怎样才能在 PHP 中做到这一点?
解决方案
您可以在 PHP 中执行此操作,就像您在任何其他语言中执行此操作一样,或者即使您手动编写该计算。
因为在您的情况下最小值可以> 0,所以我们从所有值中减去最小值以使其更容易计算。可能有一种更快的方法来做这背后的数学,但是那是我做不到的代数水平
public function getPercentageValue($maximum, $minimum, $value) {
$tempMax = $maximum - $minimum;
$tempValue = $value - $minimum;
return $tempValue / $tempMax;
}
现在,如果我们在打电话时考虑您的价值观,getPercentageValue()
我们将得到 0,4 的答案
$result = getPercentageValue(5.5, 0.5, 2.5);
echo $result; // 0.4
如果您希望该值不是浮点数,而是 40 表示 40%,您可以更改函数,使其将答案乘以 100
public function getPercentageValue($maximum, $minimum, $value) {
$tempMax = $maximum - $minimum;
$tempValue = $value - $minimum;
return ($tempValue / $tempMax) * 100;
}
推荐阅读
- firebase - 如何在新的 Google Analytics 4 中查看自然 SEO 流量关键字?
- html - 如何在转换(HTML,CSS)时将文本集中在一个 div 块上,该块在整个过渡过程中保持集中?
- javascript - 我想在监视器和目标表之间创建一对多关联,其中一个监视器可以有多个目标
- bash - 并行化 bash 脚本和条件中断
- java - 如何避免 AnnotationException:使用 @OneToMany 或 @ManyToMany 定位未映射的类?
- java - 改造异步调用条件
- ios - 在迅速满足其他编码后使用布尔值进行排序
- javascript - 如何在 Bootstrap 表中设置数据可编辑类型日期时间的位置以进行内联编辑
- r - 使用 Baseflow 包的时间序列 R 中向量长度的不合理错误
- reactjs - 与 jest/RTL 测试中的常规文档查询选择器找到的页面元素交互