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