Мне интересно, как я мог бы собрать калькулятор бюджетирования для потенциальных клиентов, в котором может произойти следующее.
Причина этого вопроса заключается в том, что% бюджета, выделенного для каждой услуги, должен меняться в соответствии с «общей картиной», но итоговая сумма всегда должна равняться 100%.
Я предполагаю, что есть много возможных результатов комбинации. … я смотрю на монстра проекта? Можно ли это сделать на PHP?
Это возможно при правильном планировании. Если вы следуете SDLC, даже если это только вы, у вас не должно быть проблем
Вам нужно добавить больше деталей к вашему вопросу для более конкретного ответа, но математика довольно проста.
Если вы применяете весовые коэффициенты к каждой услуге, то вы вычисляете сумму весовых коэффициентов для всех выбранных сервисов, делите ее для создания процента и используете его для расчета общих расходов:
$budget = 10000;
//service name => weight
$selectedServices = [
'one'=>6,
'two'=>3,
'three'=>9,
'four'=>2
];
$totalWeights= array_sum($selectedServices);
foreach($selectedServices as $key => $item){
$percent = $item / ($totalWeights /100);
$cost = $budget * ($percent/100);
echo sprintf("<p>Service %s will cost %s of your budget (£%s)</p>", $key, $percent, $cost);
}