1

好吧伙计们,基本上我有一些代码可以从一个if语句中工作,我想知道是否可以重新编码它以按百分比工作,这是当前代码

@sort($prices_array);
if ($prices_array[1] > 10000 AND $prices_array[1] < 50000) {
    $sell_at = $prices_array[1] - 250;
} elseif ($prices_array[1] > 50000 AND $prices_array[1] < 100000) {
    $sell_at = $prices_array[1] - 500;
} else {
    $sell_at = $prices_array[1] - 100;
}
$buy_at = $prices_array[1] - 1000;

if ($prices_array[1] >= 10000) {
    $buy_at = $buy_at - 1000;
    if ($prices_array[1] >= 20000) {
        $buy_at = $buy_at - 1000;
        if ($prices_array[1] >= 30000) {
            $buy_at = $buy_at - 1000;
        }
        if ($prices_array[1] >= 40000) {
            $buy_at = $buy_at - 1000;
        }
        if ($prices_array[1] >= 50000) {
            $buy_at = $buy_at - 750;
        }
        if ($prices_array[1] >= 60000) {
            $buy_at = $buy_at - 500;
        }
        if ($prices_array[1] >= 70000) {
            $buy_at = $buy_at - 500;
        }
    }
}

我知道代码做得很糟糕,但是是否可以$buy_at从某个百分比开始计算,例如比 5% 低,sell_at但四舍五入到if语句中的正确减量

4

1 回答 1

1

首先,我认为switch这里的形式会更好。其次,您可以使用此函数将舍入设置为您想要的任何增量:

function roundUpTo($number, $increments) { 
    $increments = 1 / $increments; 
    return (ceil($number * $increments) / $increments); 
}

要找到一个值的百分比,只需将该值乘以百分比除以 100。

于 2013-04-25T04:10:45.203 回答