2
$arr = $results->row();
$score = 0;
foreach ($arr as &$i) {
switch($i){
case ($i <= 4 AND $i >= 1):
$score += 1;
break;
case ($i < 8 AND $i > 4):
$score += 3;
break;
case ($i >= 8):
$score += .5;
break;
}
}
echo $score
這是我當前的代碼,總計基於約30分貝(SQL)條目的值。有點像分級ruberik。 我需要幫助改善上述代碼。有一個更好的方法嗎?PHP測試評分邏輯和改進?
另外。其中一些(即3,5,8行需要以不同方式評分)。我如何在邏輯中忽略這些行,並讓它們得分不同?
這是一個codeigniter函數,所以如果有人能夠向我展示一個簡單快捷的方法來做到這一點,我會很喜歡它!非常感謝!
這看起來很不錯。如果我想創建4個案例(不同的評分方法),我將如何切換這些情況? – 2010-01-10 00:50:03
你只是想添加另一個'else if'子句,並且順序取決於你。根據用戶通常選擇的答案,簡單地按照頻率遞減的順序放置它們。 – 2010-01-10 12:55:05
我認爲我們沒有溝通...... 我的意思是,如果我想要多種評分方法,我該怎麼做? 即。我想以單方得分2,4,5,6,20,3,7,9另一種方式,並跳過1,10? – 2010-01-10 15:35:45