php - PHP - 将数字转换为科学计数法
问题描述
我有一堆总是 < 1 的数字。在某些情况下,PHP 将这些数字输出为科学计数法,在某些情况下只输出数字。
我发现如果数字超过 4 个零小数(0.0000xyz),那么它显示为科学记数法。我已经能够将科学记数法数字转换为 int 但我想强制使用科学记数法但无法弄清楚如何。
有什么办法可以发生这种情况?
解决方案
%e
您可以使用 sprintf/printf 的或%E
格式说明符转换为科学计数法。
e 参数被视为科学记数法(例如 1.2e+2)。精度说明符代表自 PHP 5.2.1 以来小数点后的位数。在早期版本中,它被视为有效位数(少一位)。
E 与 e 说明符类似,但使用大写字母(例如 1.2E+2)。– https://www.php.net/manual/en/function.sprintf.php
要获得小数点后的特定位数,您可以使用精度说明符,例如%.14e
这是 sprintf 手册中的一个示例。
Example #6 sprintf(): 科学记数法
<?php $number = 362525200; echo sprintf("%.3e", $number); ?>
上面的示例将输出:
3.625e+8
推荐阅读
- php - 多团队单体应用程序开发中的 SonarQube 用例
- maven - How to execute ant jar from maven-antrun-plugin
- apache - rewrite rule to redirect to SEO friendly URL
- jmeter - 如何从 Jmeter 中的 CSV 获取线程数和持续时间
- c# - 我必须使用旧的 .net 技术做一个项目,VS2017 是否与旧技术兼容?
- c# - How to Convert Keyboard to Touch controller
- excel - Excel VBA AccessApplication.OpenCurrentDatabase Not Working
- python - How to merge data from multiple dicts into a single row in a DataFrame
- ios - Obj-C - didSelectRowAtIndexPath not firing?
- vb.net - Graphically detect a control on a form in vb.net