实习小结十一:PHP实现每周排名(随排名变化,箭头改变)

我这边实现的主要是根据上周的排名,来与目前的排名进行对比,如果排名上升,就是上升的红色箭头,箭头随排名发生改变。
具体看部分代码:
rankarray count_same是相同排名的计数次数。
主要是,先将排名第一的进行单独判断,之后的排名和前一个排名进行判断,如果排名相同,那么使得当前的index排名和前一个的相同,因为他们的排名实际上是一致的,所以上升和下降也应该相同。

<?php 
    $rank_array = array();
    $count_same = 0; ?>
<?php foreach ($companies as $index => $company) {?>
    <div class="infor<?php echo $else_index;?> info">  
        <?php $index++; ?>
        <div class="index"><?php echo $index; ?></div>

        <?php array_push($rank_array, $company->last_rank);
        ?>

        <?php if ($index == 1) {
            if ($index - ($company->last_rank) > 0){ ?>
                <div class="rank-down rank"></div>
        <?php }
            elseif ($index - ($company->last_rank) < 0) { ?>
                <div class="rank-up rank"></div>
        <?php }
            else{ ?>
                <div class="rank-still rank"></div>
        <?php }
        }else{
            if ($rank_array[$index-1] == $rank_array[$index-2]){
                $count_same++;
                $index_a = $index - $count_same;
            }else{
                $index_a = $index;
            }

            if ($index_a - ($company->last_rank) > 0){ ?>
                <div class="rank-down rank"></div>
        <?php }
            elseif ($index_a - ($company->last_rank) < 0) { ?>
                <div class="rank-up rank"></div>
        <?php }
            else{ ?>
                <div class="rank-still rank"></div>
        <?php }
        } ?>

实现效果图:
说起来可能比较复杂,但是实际试一试,很简单

在做关于算法的时候,如果遇到不明白的错误,最好拿张纸和笔,自己按照算法流程过一遍,这样容易发现问题。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值