PHP:Foreach评分帮助

PHP:Foreach评分帮助,php,Php,我有一个php,它根据每小时的答案为测试打分: $score_a = 0; foreach(array(4,5,10) as $a){ if ($a >= 2 && $a <= 4) { $score_a += 1; } else if ($a > 4 && $a <= 8) { $score_a += 3; } else if

我有一个php,它根据每小时的答案为测试打分:

    $score_a = 0;

    foreach(array(4,5,10) as $a){
        if ($a >= 2 && $a <= 4) {
            $score_a += 1;
        } else if ($a > 4 && $a <= 8) {
            $score_a += 3;
        } else if ($a > 8) {
            $score_a += 0;
        }
    };
$score\u a=0;
foreach(数组(4,5,10)为$a){
如果($a>=2&&$a 4&&$a 8){
$score_a+=0;
}
};
我需要最后一个“如果”的分数有点不同。如果值大于8,我需要为大于8的每个整数加.5,而不是一次加.5


所以这个分数应该是5,而不是4.5。你的意思是:
$score\u a+=floor($a-8)*.5

您可以这样使用它:

foreach(array(4,5,10) as $a){
    if ($a >= 2 && $a <= 4) {
        $score_a += 1;
    } else if ($a > 4 && $a <= 8) {
        $score_a += 3;
    } else if ($a > 8) {
        $score_a += floor($a - 8) * .5;
    }
};
foreach(数组(4,5,10)为$a){
如果($a>=2&&$a 4&&$a 8){
$score_a+=底价($a-8)*.5;
}
};

我想是吗?我是一个主要的初学者。。。基本上,对于8以上的每一个数字,需要加上0.5(不同于之前的,它是一个加法)。明天将进行测试。现在是凌晨4点……:)elseif($a>=9){//K Prime的代码在这里运行}必须有效。不清楚您是否可以解释得更清楚谢谢请澄清您的问题。你需要做什么?我不明白。你认为4、5和10的结果是什么?那么$score_a的初始值是多少?