0

私はこの評価関数を以下に書きましたが、それをより小さく/より単純にするか、より適切にコーディングできるかどうか疑問に思っていました。

function rating( $number ) {

if ($number >= .0 && $number <= .099999) { 
  $star = '<img src="images/0.gif" alt="' . $number . '" />';
}

if ($number >= .10 && $number <= .199999){
  $star = '<img src="images/10.gif" alt="' . $number . '" />';
}

if ($number >= .20 && $number <= .299999){
  $star = '<img src="images/20.gif" alt="' . $number . '" />';
}

if ($number >= .30 && $number <= .399999){
  $star = '<img src="images/30.gif" alt="' . $number . '" />';
}

if ($number >= .40 && $number <= .499999){
  $star = '<img src="images/40.gif" alt="' . $number . '" />';
}

if ($number >= .50 && $number <= .599999){
  $star = '<img src="images/50.gif" alt="' . $number . '" />';
}

if ($number >= .60 && $number <= .699999) { 
  $star = '<img src="images/60.gif" alt="' . $number . '" />';
}

if ($number >= .70 && $number <= .799999){
  $star = '<img src="images/70.gif" alt="' . $number . '" />';
}

if ($number >= .80 && $number <= .899999){
  $star = '<img src="images/80.gif" alt="' . $number . '" />';
}

if ($number >= .90 && $number <= .999999){
  $star = '<img src="images/90.gif" alt="' . $number . '" />';
}

if ($number > .999999){
  $star = '<img src="images/100.gif" alt="' . $number . '" />';
}

return $star;
}

使用方法は次のとおりです。

rating(0.51087)
4

1 に答える 1

6

もちろん、ちょっとした計算が必要です。

function rating($number) {
    return '<img src="images/' . floor($number * 10) * 10 . '.gif" alt="' . $number . '" />';
}
于 2012-07-23T01:51:52.810 に答える