我想将 0.45 格式化为 45%。
我知道我可以做类似的事情FLOOR($x*100).'%'
,但想知道是否有更好的方法(更好的定义为更标准,不一定更快)。
一种想法是http://php.net/manual/en/class.numberformatter.php。这是更好的方法吗?有没有人用过它,你能举个例子吗?谢谢
我想将 0.45 格式化为 45%。
我知道我可以做类似的事情FLOOR($x*100).'%'
,但想知道是否有更好的方法(更好的定义为更标准,不一定更快)。
一种想法是http://php.net/manual/en/class.numberformatter.php。这是更好的方法吗?有没有人用过它,你能举个例子吗?谢谢
最有可能的是,您想要round
而不是floor
. 但除此之外,这将是最“标准”的方式。或者,您可以使用sprintf
例如:
sprintf("%.2f%%", $x * 100)
这将打印 $x 的百分比,精度为小数点后两位,然后是百分号。
执行此操作的最短方法NumberFormatter
是:
$formatter = new NumberFormatter('en_US', NumberFormatter::PERCENT);
print $formatter->format(.45);
如果您的应用程序支持各种语言环境,那么这样做会更好,但否则您只是添加另一行代码而没有太多好处。
你也可以使用一个函数。
function percent($number){
return $number * 100 . '%';
}
然后使用以下内容显示结果。
percent($lab_fee)