如何在 4.5 之后附加零以使其在 PHP 中成为 4.50? [复制]

Posted

技术标签:

【中文标题】如何在 4.5 之后附加零以使其在 PHP 中成为 4.50? [复制]【英文标题】:How to append zero after 4.5 to make it 4.50 in PHP? [duplicate] 【发布时间】:2015-08-25 07:51:37 【问题描述】:

我知道这可能是一个愚蠢的问题,也可能是重复的问题,但我找不到之前发布的任何合适的问题(可能是我的无能)

我有一个从 DB 中获取的值...它的意思是

4.5   which should be 4.500
0.01  which should be 0.010
11    which should be 11.000

如何在 php 中实现这一点?

【问题讨论】:

***.com/questions/4483540/… 【参考方案1】:

只需使用 sprinft 对其进行格式化,使其成为保留 2 位小数的浮点数。

echo sprintf("%.2f", 4.5);

https://eval.in/378771

如果您将2 更改为3,您将获得您列出的格式。

echo sprintf("%.3f", 4.5) . PHP_EOL;
echo sprintf("%.3f", 0.01) . PHP_EOL;
echo sprintf("%.3f", 11) . PHP_EOL;

https://eval.in/378773

【讨论】:

【参考方案2】:

php.net/number_format

number_format(4.5,2);

【讨论】:

【参考方案3】:

使用函数number_format

PHP 不支持小数点右侧的尾随零。您需要将数字格式化为字符串。

$value = number_format($value,3);

【讨论】:

【参考方案4】:

现代方式是使用NumberFormatter,它根据设置的区域设置格式化数字。

$fmt = new NumberFormatter('en-US', NumberFormatter::DECIMAL);
$fmt->setAttribute(NumberFormatter::MAX_FRACTION_DIGITS, 3);
$fmt->format(1234567.891234567890000);

【讨论】:

【参考方案5】:

如果你使用 mysql 那么使用 FORMAT 函数 比如 SELECT FORMAT(4.5,4)

【讨论】:

【参考方案6】:

还有str_pad(4.5,STR_PAD_RIGHT) 更多http://php.net/manual/zh/function.str-pad.php

【讨论】:

以上是关于如何在 4.5 之后附加零以使其在 PHP 中成为 4.50? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

如何在写入期间锁定文件以使其在打开时无法读取?

如何放置时间戳以使其在保存时不会重复

如何更改我的 C++ 代码以使其在 C 中可用?

如何隐藏 DefaultTableModel 中的特定列以使其在表中显示?

为啥我们需要将 Swift 类标记为 `public` 或 `open` 以使其在 Objective-C 框架项目中可访问?

修改搜索以使其在 SQL Server 中不区分重音