价格格式化问题。

bear63 2014-12-19 11:41:19
首先感谢这个 CSDN 平台,帮助我们解决了很多难道,非常感谢!


现在我有一个价格格式化问题,求大家指点,谢谢。

例如 100000 自动格式化为 10万

56000 自动格式化为 5.6万

6000 就显示 6000
...全文
163 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
bear63 2014-12-21
  • 打赏
  • 举报
回复
引用 4 楼 jordan102 的回复:
$num = 100000;
echo $num < 10000 ? $num : $num/10000 . '万';
独自面壁去。。。
kis龍 2014-12-20
  • 打赏
  • 举报
回复

$num = 110000001;
echo price_format($num);

function price_format($num){
	$p=rtrim(number_format($num < 1e4 ? $num :$num<1e8? $num/1e4 : $num/1e8,2 ),'0');
    return $num < 1e4 ? $num :$num<1e8? ($p . '万'): ($p . '亿');
}
根据4L得来的
晓敬 2014-12-20
  • 打赏
  • 举报
回复
引用 4 楼 jordan102 的回复:
$num = 100000;
echo $num < 10000 ? $num : $num/10000 . '万';
简短精炼,值得信赖
neosion 2014-12-19
  • 打赏
  • 举报
回复
$num = 100000;
echo $num < 10000 ? $num : sprintf("%0.1f",$num/10000) . '万';
一起混吧 2014-12-19
  • 打赏
  • 举报
回复
$num = 100000;
echo $num < 10000 ? $num : $num/10000 . '万';
ghostwuboy 2014-12-19
  • 打赏
  • 举报
回复

header("Content-type: text/html; charset=utf-8");
function removeAfterZero($str) {
    $s = $str;
    $r = '';
    for ($i = strlen($s)-1; $i > 0; $i--) {
        if ($s[$i] == 0)  {
            $s = substr($s, 0, $i);
            $r = $s;
        } else {
            break;
        }
    }
    return $r;
}

$num = 1000100;
if (strlen(strlen($num) < 5))
    echo $num;
else if (strlen($num) >= 5 && strlen($num) < 6) {    
    if (removeAfterZero(substr($num, 1, strlen($num)-1)) == 0)
        echo  substr($num, 0, 1) . "万";
    else     
        echo  substr($num, 0, 1) . '.' .  removeAfterZero(substr($num, 1, strlen($num)-1)) . "万";
}else if (strlen($num) >= 6 && strlen($num) < 7) {
     if (removeAfterZero(substr($num, 2, strlen($num)-2)) == 0)
        echo  substr($num, 0, 2) . "万";
    else     
        echo  substr($num, 0, 2) . '.' .  removeAfterZero(substr($num, 2, strlen($num)-2)) . "万";
}else if (strlen($num) >= 7 && strlen($num) < 8) {
    if (removeAfterZero(substr($num, 3, strlen($num)-3)) == 0)
        echo  substr($num, 0, 3) . "万";
    else     
        echo  substr($num, 0, 3) . '.' .  removeAfterZero(substr($num, 3, strlen($num)-3)) . "万";
}
闪闪放光芒 2014-12-19
  • 打赏
  • 举报
回复
自己写一个方法如果是五位整数除以一万如果不是直接显示
ayayad 2014-12-19
  • 打赏
  • 举报
回复
虽然有些难题还是解决不了,但也同样会感谢 CSDN 平台,非常感谢!

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧