如何打印舍入百分比

时间:2012-10-23 20:38:02

标签: php echo

你好,我正试图找到%。首先我发现了秒数

 $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

3 个答案:

答案 0 :(得分: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);

实际上,您可以使用this question中的解决方案来更好地使用 number_format()并获得所需的结果。

答案 1 :(得分:0)

echo sprintf('%0.1f', $c_seconds);

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

答案 2 :(得分:0)

http://php.net/manual/en/function.number-format.php numberformat可能就是你要找的。