1

你好,我正在寻找 %。首先我找到了秒

 $tm=sum_the_time($d_duration); 
 $d_seconds='0';
 list($hour,$minute,$second) = explode(':', $tm);
    $d_seconds += $hour*3600;
    $d_seconds += $minute*60;
    $d_seconds += $second;


     $total_second=$c_seconds+$p_seconds+$t_seconds+$b_seconds+$d_seconds;

 $c_seconds=$c_seconds*100/$total_second;
 $p_seconds=$p_seconds*100/$total_second;
 $t_seconds=$t_seconds*100/$total_second;
 $b_seconds=$b_seconds*100/$total_second;
 $d_seconds=$d_seconds*100/$total_second;

 echo $c_seconds;

结果是 10.754504504505,我将如何像 10.7 一样打印此代码

4

3 回答 3

1

您可以尝试使用printf()函数:

printf("%.1f", $c_seconds);

或者,number_format()

echo number_format( $c_seconds, 1 );

这两个函数将对您的数字进行四舍五入(在您的示例中将返回 10.8),因此,如果您只想截断到第一个小数位(结果等于 10.7),您可以使用以下命令:

echo substr($c_seconds, 0, strpos($c_seconds, ".") + 2);

实际上,您可以使用这个问题的解决方案来更好地使用number_format()并获得您想要的结果。

于 2012-10-23T20:50:01.243 回答
0
echo sprintf('%0.1f', $c_seconds);

相关文档:http: //php.net/sprintf

于 2012-10-23T20:39:48.490 回答
0

http://php.net/manual/en/function.number-format.php numberformat 可能是您正在寻找的。

于 2012-10-23T20:40:20.277 回答