【发布时间】:2021-11-23 15:59:17
【问题描述】:
让我举个例子:
它是什么:
$ 100,000
$ 10,000
$ 1,000
我想要什么:
$ 100,000
$ 10,000
$ 1,000
我也不知道如何命名这个问题。有什么建议吗?
【问题讨论】:
-
取决于输出上下文...对于 HTML/CSS,Rana 提出了一个可行的解决方案。对于纯文本输出,
str_pad()和等宽字体就足够了。
让我举个例子:
它是什么:
$ 100,000
$ 10,000
$ 1,000
我想要什么:
$ 100,000
$ 10,000
$ 1,000
我也不知道如何命名这个问题。有什么建议吗?
【问题讨论】:
str_pad() 和等宽字体就足够了。
你可以在下面的 sn-p 中使用类似的东西。
在右侧定义width 和text-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>
【讨论】:
这是一个函数,您可以将数字传递给并获得所需的值,如果您需要传递动态变量
<?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);
【讨论】: