我有一个公式,可以计算出一个投注累加器。
公式是:
桩x(分数比数+1)x(分数比数+1)等
我希望编写一个PHP函数,它循环遍历赔率,然后返回值。
我有一个数组如下(包含小数概率)..。
$odds = array(
'8/15',
'11/2',
'13/2',
'7/2'
);一些PHP代码示例,它展示了我如何做到这一点(没有函数).
$result = 10 * (8/15 + 1) * (11/2 + 1) * (13/2 + 1) * (7/2 + 1);
echo number_format($result,2); // 3,363.75目前我的赌注是“10”。
我需要做的是循环遍历赔率数组,并将它们乘以括号,然后以桩乘开始,因此这是测试用例10。
有人能提出写这个的方法吗?当我尝试写*我总是得到PHP错误。
如果这个话题不适合社区,请说明,我会删除。
谢谢
发布于 2014-12-03 15:55:57
像这样的东西应该能起作用
function compute ($stake, $values) {
$result = $stake;
foreach ($values as $val)
{
$parts = explode('/', $val);
$result *= ($parts[0] / $parts[1] + 1);
}
return $result;
}
$stake = 10;
$odds = array (
'8/15',
'11/2',
'13/2',
'7/2'
);
$result = compute($stake, $odds);
var_dump($result);下面是一个可以使用的演示:http://3v4l.org/RNAGH
发布于 2014-12-03 15:53:53
我觉得PHP的类型杂耍会让你的行为变得难以预测,所以用best拆分分数字符串是最好的方法
function calculate($stake, $odds)
{
$res = $stake;
foreach ($odds as $odd) {
$split = explode('/', $odd);
$res *= ($split[0] / $split[1]) + 1;
}
return $res;
}
echo calculate(10, $odds);发布于 2014-12-03 15:53:29
你是说这样
$stake = 10;
$odds = array(
'8/15',
'11/2',
'13/2',
'7/2'
);
function formula($stake, array $odds){
$result = $stake;
foreach ($odds as $odd) {
$digit = explode('/',$odd);
$result *= ($digit[0]/$digit[1] + 1);
}
return $result;
}
echo formula($stake, $odds);https://stackoverflow.com/questions/27275815
复制相似问题