在 PHP 变量中设置 printf() 值

问题描述 投票:0回答:2

我有一个显示时间的php脚本,例如:9.08374786377E-5,但我需要简单的浮动值作为时间,例如:0.00009083747.....这就是为什么我只是用这样的浮动来打印它:

<?php

function microtime_float()
{
list($usec, $sec) = explode(" ", microtime());
return ((float)$usec + (float)$sec);
}
$time_start = microtime_float();

$time_end = microtime_float();
$time = $time_end - $time_start;
printf('%.16f', $time);

?>

它很好地显示了结果,但我需要在新变量中设置此打印值。我怎样才能做到这一点 ?我需要在新变量 $var 中设置这个打印值;

$var = printf('%.16f', $time); 

//我们都知道它不起作用,但是如何设置呢?

php printf floating
2个回答
34
投票

您需要使用 sprintf 命令将数据作为变量获取... printf 输出结果,而 sprintf 返回结果

$var = sprintf('%.16f', $time); 

4
投票

那是因为

sprintf()
返回一个字符串,
printf()
显示它。

printf('%.16f', $time);

等同于:

echo sprintf('%.16f', $time);

由于

sprintf()
将结果打印到字符串中,因此您可以将其存储在变量中,如下所示:

$var = sprintf('%.16f', $time);

希望这有帮助!

© www.soinside.com 2019 - 2024. All rights reserved.