我想做一个星级展示。这是我的代码。
<?php $rate = 4; ?>
<i class="material-icons md-18">star</i>
<i class="material-icons md-18">star</i>
<i class="material-icons md-18">star</i>
<i class="material-icons md-18">star</i>
<i class="material-icons md-18">star_border</i>我想这样做:例如,如果$rate =3显示3颗星,则显示2倍star_border。如果$rate =4显示4x星号,则1x star_border
下面是我写的太长的代码。我想要更短更实用的。
<?php $rate = 1;?>
<?php if ($rate == 1): ?>
<i class="material-icons md-18">star</i>
<i class="material-icons md-18">star_border</i>
<i class="material-icons md-18">star_border</i>
<i class="material-icons md-18">star_border</i>
<i class="material-icons md-18">star_border</i>
<?php elseif ($rate == 2): ?>
<i class="material-icons md-18">star</i>
<i class="material-icons md-18">star</i>
<i class="material-icons md-18">star_border</i>
<i class="material-icons md-18">star_border</i>
<i class="material-icons md-18">star_border</i>
<?php elseif ($rate == 3): ?>
<i class="material-icons md-18">star</i>
<i class="material-icons md-18">star</i>
<i class="material-icons md-18">star</i>
<i class="material-icons md-18">star_border</i>
<i class="material-icons md-18">star_border</i>
<?php elseif ($rate == 4): ?>
<i class="material-icons md-18">star</i>
<i class="material-icons md-18">star</i>
<i class="material-icons md-18">star</i>
<i class="material-icons md-18">star</i>
<i class="material-icons md-18">star_border</i>
<?php elseif ($rate == 5): ?>
<i class="material-icons md-18">star</i>
<i class="material-icons md-18">star</i>
<i class="material-icons md-18">star</i>
<i class="material-icons md-18">star</i>
<i class="material-icons md-18">star</i>
<?php endif;?>发布于 2018-01-26 00:31:59
这应该能很好地服务于你。
<?php
$rate = 3;
for ($x = 0; $x < $rate; $x++) {
echo '<i class="material-icons md-18">star</i>';
}
for ($x = 0; $x < 5-$rate; $x++) {
echo '<i class="material-icons md-18">star_border</i>';
}
?>你回想起你的评级所说的那么多的首发。然后根据需要回显任意数量的星形边框。
https://stackoverflow.com/questions/48444998
复制相似问题