Laravel 中的星级和半星评级
Posted
技术标签:
【中文标题】Laravel 中的星级和半星评级【英文标题】:Star and Half Star Rating in Laravel 【发布时间】:2021-11-25 16:53:09 【问题描述】:我想以星级显示平均产品评分。数值显示良好,但如果数值为浮点数,我想显示半星。
我的刀片视图:
<div class="rating">
@for($i=0;$i<5;$i++)
@if($product->ratings->avg('rating') > $i)
<span class="icon-ratings"><i class="icon-rating icon-rating-x"></i></span>
@else
<span class="icon-ratings"><i class="icon-rating icon-rating-o"></i></span>
@endif
@endfor
<div style="float:left">$product->ratings->avg('rating')</div>
</div>
平均值显示为 4.5。但是所有的 5 颗星都充满了金色。我想填充最后一半的星,因为那是一个浮点数。
【问题讨论】:
【参考方案1】:使用floor()
函数来检测像这样的浮点值
.................
@for($i=0;$i<5;$i++)
<?php
$thisRating = product->ratings->avg('rating')
if(floor($thisRating) != $thisRating)
$hasHalfVal = 1;
else
$hasHalfVal = 0;
?>
@if($thisRating > $i && $hasHalfVal == 0)
<span class="icon-ratings"><i class="icon-rating icon-rating-x"></i></span>
@else if($thisRating > $i && $hasHalfVal == 1)
<span class="icon-ratings"><i class="icon-rating icon-rating-half"></i></span>
@else
<span class="icon-ratings"><i class="icon-rating icon-rating-o"></i></span>
@endif
.................
【讨论】:
以上是关于Laravel 中的星级和半星评级的主要内容,如果未能解决你的问题,请参考以下文章
如何在 swift 中使用 cosmos 评级控制器显示半星评级?