已掉线,重新登录

首页 > 绿虎论坛 > 历史版块 > 编程 > PHP > 讨论/求助

标题: 求一个更精简的php王者荣耀等级转换文字

作者: @Ta

时间: 2021-11-07发布,2021-11-07修改

点击: 1610

image.png

目前,big代表 此段位有多少段,small代表每个段要多少个星,
例如 
【青铜3,1星】-> 【青铜3,2星】->【青铜3,1星】->【青铜2,1星】->【青铜2,2星】->....【青铜1,3星】->【白银3,1星】->【白银3,2星】->
<?php

namespace app\wz\lib;

class WzGrade
{

    public static $grade = [
        "青铜" => [
            'big' => 3,
            'small' => 3,
        ],
        "白银" => [
            'big' => 3,
            'small' => 3
        ],
        "黄金" => [
            'big' => 4,
            'small' => 4
        ],
        "铂金" => [
            'big' => 5,
            'small' => 5
        ],
        "钻石" => [
            'big' => 5,
            'small' => 5
        ],
        "星耀" => [
            'big' => 5,
            'small' => 5
        ],
        "王者" => [
            'big' => 1,
            'small' => 100
        ]
    ];


    public static function convertRankToString($num){
        $_num=0;
        foreach(self::$grade as $name=>$value ){
            for($big =$value['big'];$big>=1;$big--){
                //每个段位,从5-1,倒叙
                for($small =1;$small<= $value['small'];$small++){
                    if($num==$_num){
                        $_str='【'.$name.$big.'】'.$small;
								if($small>5){
                                    $_str.=`颗星`;
								}else{
                                    for($i=0;$i<$small;$i++){
                                        if($i==0){
                                            $_str.="颗";
										}
                                        $_str.="★";
									}
								}
								if($name=='王者'){
                                    $_str=$name.$small.'颗★';
                                }
								return $_str;
							}
                    $_num++;
                }
            }
        }
    }

}

[隐藏样式|查看源码]


『回复列表(1|隐藏机器人聊天)』

2. 有啥用?
(/@Ta/2021-11-07 23:44//)

回复需要登录

8月22日 22:13 星期五

本站由hu60wap6驱动

备案号: 京ICP备18041936号-1