我用
money_format('%(#15.2n',$money)
它输出类似
$ 500.00
有没有办法去掉美元符号和 500 之间的空格?
使用 str_replace(" ", "", $string)
删除多余的空格相当简单。您使用的代码实际上是添加填充。文档中的一个示例money_format
:
// 美国国家格式,使用 () 表示负数
// 10 位表示左精度
setlocale(LC_MONETARY, 'en_US');
echo money_format('%(#10n', $number) . "\n";
// ($ 1,234.57)
在#15
你的例子中是罪魁祸首。如果您要查看pre
标签内的引用,您实际上会看到填充到 15 个空格的数字。
$ 500.00
如果你删除它...
money_format('%(.2n',$money)
你会得到:
$500.00
您也可以删除(
以不将负数括在括号中(替代方法是 a-
在开头)。如果您实际上仍然想要那个以及您在预期结果中引用的单个空格,您可以尝试:
money_format('%(#4.2n',$money)
$str = preg_replace('/\s\s+/', ' ', $str);
这就是我使用的:
function my_money_format($number){
return str_replace(" ", "",money_format('%+#10n', $number));
}
echo money_format('$%i', $number)