2017-02-16 60 views
-1

正确显示评分我遇到问题。我需要使用PHP显示每分贝值的评级,但它不会按预期进行。我正在下面解释我的代码。无法使用php

$v['rating']=4; 
<ul> 
    <?php 
     for($i=0;$i<5;$i++){ 
      if($i <= $v['rating']){ 
?> 
      <li><i class="fa fa-star activestar"></i></li> 
<?php }else { ?> 
      <li><i class="fa fa-star"></i></li> 
<?php } }?> 
</ul> 

在这里,我需要突出显示4颗星,5颗星之一,并不会突出显示。但我正在让所有的明星突出。请帮帮我。

回答

0

您的代码应该是这样的:

$v['rating'] = 4; 
<ul> 
    <?php for ($i = 1; $i <= 5; $i++): ?> 
     <?php if ($i <= $v['rating']): ?> 
      <li><i class="fa fa-star activestar"></i></li> 
     <?php else: ?> 
      <li><i class="fa fa-star"></i></li> 
     <?php endif; ?> 
    <? endfor; ?> 
</ul> 
0

保持锂循环之外

$v['rating']=4; 
    <ul> 
    <li> 
    <?php 
    for($i=1;$i<6;$i++){ 
     if($i <= $v['rating']){ 
     ?> 
     <i class="fa fa-star activestar"></i> 
    <?php }else { ?> 
     <i class="fa fa-star"></i> 
    <?php } }?> 
    </li> 
    </ul> 
0

您的循环从0到4(条件:为$i小于5,这是四个)。

纠正它的一种方法是将您的for循环更改为for($i=1;$i<=5;$i++)。这种方式从1到5循环。