【问题标题】:How do I format numbers to add space on thousandth and none on ten thousandth etc如何格式化数字以在千分之一处添加空间而在千分之一处不添加空格等
【发布时间】:2021-11-23 15:59:17
【问题描述】:

让我举个例子:

它是什么:

$ 100,000
$ 10,000
$ 1,000

我想要什么:

$ 100,000
$  10,000
$   1,000

我也不知道如何命名这个问题。有什么建议吗?

【问题讨论】:

  • 取决于输出上下文...对于 HTML/CSS,Rana 提出了一个可行的解决方案。对于纯文本输出,str_pad() 和等宽字体就足够了。

标签: php html css


【解决方案1】:

你可以在下面的 sn-p 中使用类似的东西。

在右侧定义widthtext-align

.rich {
  display: inline-block;
  width: 50px;
  text-align: right;
}
<span>$</span><span class="rich">100,000</span><br>
<span>$</span><span class="rich">1,000</span><br>
<span>$</span><span class="rich">100</span><br>

【讨论】:

    【解决方案2】:

    这是一个函数,您可以将数字传递给并获得所需的值,如果您需要传递动态变量

    <?php
    
    function formatNumber($number)
    {
        //check string length if it;s not a multiple of three, make it the nearest multiple of three
        $pad =  (floor(strlen(number_format($number)) / 3) * 3) + 3;
        $formatted = (strlen($number % 3)) === 0 ?  number_format($number) : str_pad(number_format($number), $pad, " ", STR_PAD_LEFT);
        //echo $formatted . "<br>" . strlen($formatted);
        echo $formatted;
    }
    
    formatNumber(127980);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-02-21
      • 2013-05-14
      • 2023-01-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-24
      相关资源
      最近更新 更多