科学数字的格式
Posted
技术标签:
【中文标题】科学数字的格式【英文标题】:Formatting of scientific numbers 【发布时间】:2019-11-10 18:12:07 【问题描述】:试图打印出科学数字,我尝试了不同种类的 php 数字格式,包括 sprintf 等。
<?php
$layer1capacityratio = 3.9008133852857E-5;
echo sprintf('%f',$layer1capacityratio);
这输出“0.000039”,但我想输出“0.003901%”。
我不确定我错过了什么。如果有人能指出我正确的方向,我将不胜感激!
【问题讨论】:
请注意我对您的问题所做的修改。您应该只包含重现问题所需的最少相关信息。您通过 HTTP 从 JSON 数据源获取此数字的事实与该问题无关。这也适用于问题标签。 【参考方案1】:如果要将数字显示为百分比,请将其乘以 100 并添加一个百分号。
<?php
$layer1capacityratio = 3.9008133852857E-5;
echo sprintf('%f%%',$layer1capacityratio * 100);
您还可以使用the format string 来控制输出中的有效数字:
echo sprintf('%.8f%%',$layer1capacityratio * 100);
【讨论】:
以上是关于科学数字的格式的主要内容,如果未能解决你的问题,请参考以下文章