所以我正在为我的网站创建一个积分系统,我希望在用户配置文件中显示时将其更改为echo而不是实际的整数。 例如:当整数低于1000时,它显示为实际数字(例如:645)。但是当它在1000到1100之间时,它将显示为“1k”,依此类推。到目前为止我所做的工作有效,但显示不正确,似乎有点浪费空间..有没有办法以更简单的方式做到这一点;更快的方式?
谢谢!
代码:
<?php
$points_disp = $user_data['points'];
if($points_disp < 1000){
echo $points_disp;
} else if ($points_disp >= 1000){
echo '1k';
} else if ($points_disp >= 1200){
echo '1.2k';
} else if ($points_disp >= 1400){
echo '1.4k';
} else if ($points_disp >= 1600){
echo '1.6k';
} else if ($points_disp >= 1800){
echo '1.8k';
} else if ($points_disp >= 2000){
echo '2k';
}
?>
Edit: I figured out an easier way to do this;
code (for anyone else who needs to do this):
<?php
$points_disp = $user_data['points'];
$fdigit = substr($points_disp, 0, 1);
$sdigit = substr($points_disp, 1, 1);
if ($points_disp < 1000){
echo $points_disp;
} else if ($points_disp >= 1000){
echo $fdigit . "." . $sdigit . "k";
}
echo $num;
?>
答案 0 :(得分:0)
试试这个,
SelectMany
答案 1 :(得分:0)
您可以使用开关案例:
$points_disp = $user_data['points'];
switch(true)
{
case ($points_disp < 1000):
$num = $points_disp;
break;
case ($points_disp > 1000 && $points_disp < 1100 ):
$num = '1.2k';
break;
//...so on
}
echo $num;