Вы сделаете это в 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
Если вы хотите, чтобы значение не было как float, а как 40 для 40%, вы бы изменили функцию так, чтобы она умножала ответ на 100
public function getPercentageValue($maximum, $minimum, $value) {
$tempMax = $maximum - $minimum;
$tempValue = $value - $minimum;
return ($tempValue / $tempMax) * 100;
}