答案 0 :(得分:0)
$rating = 3;
for ($x=1; $x<=5; $x++) {
echo $x<=$rating ? "<img src="{{ URL::asset('assets/star.png')}}">" : "<img src="{{ URL::asset('assets/ustar.png')}}">";
}
答案 1 :(得分:0)
$rating = 3;
unfilled=5-$rating;
for($x = 1; $x <= $rating; $x++)
{
echo "<img src='{{ URL::asset('assets/star.png')}}'>";
}
for($x = 1; $x <= $unfilled; $x++)
{
echo "<img src='{{ URL::asset('assets/ustar.png')}}'>";
}
答案 2 :(得分:0)
我不是PHP或其他任何专家,但您可以制作5张评级图片并根据$ rating选择图片。
$pics = array('assets/1star.png', 'assets/2star.png', 'assets/3star.png', 'assets/4star.png','assets/5star.png');
$rating = 3;
$pickedpic = $pics[$rating];
只是另一个想法。这样可以防止每个评级加载5x png
答案 3 :(得分:0)
当你退出第一个循环时,$x
仍然有一个有用的值。通过省略下一个for循环中的第一个变量,您可以在第一个循环结束时使用$ x的值。
$rating = 3;
@for($x = 1; $x <= $rating; $x++)
<img src="{{ URL::asset('assets/star.png')}}">
@endfor
@for(; $x <= 5; $x++)
<img src="{{ URL::asset('assets/ustar.png')}}">
@endfor
答案 4 :(得分:0)
两个循环。一个用于填充,剩余用于未填充:
$rating = 3;
@for($x = 1; $x <= $rating; $x++)
<img src="{{ URL::asset('assets/star.png')}}">
@endfor
@for($x = $rating +1; $x <= 5; $x++)
<!--<img src="{{ URL::asset('assets/ustar.png')}}"> --> //unfilled
@endfor