首頁 >後端開發 >PHP問題 >php中實現四捨五入的方法有哪些

php中實現四捨五入的方法有哪些

青灯夜游
青灯夜游原創
2021-11-18 10:47:377828瀏覽

方法:1、使用number_format(),語法「number_format($num,小數位數,'.','')」;2、使用round(),語法「round($num,小數位數)」;3、利用sprintf()函數格式化輸出來實現四捨五入。

php中實現四捨五入的方法有哪些

本教學操作環境:windows7系統、PHP7.1版、DELL G3電腦

在PHP開發中,有時候我們會遇到將資料四捨五入的運算情況,下面分享用PHP實作資料四捨五入的3種方法,分別透過number_format()函數、round()函數和sprintf()格式化輸出的方法實作四捨五入。

1、number_format() 方法實作四捨五入

number_format() 函數透過千位元分組來格式化數字。

<?php
 
//定义一个float型的变量
$number = 1234.5678;
 
//English Notation (defult)
$number_format_english = number_format($number);
//1,235
$number_format_english = number_format($number, 2, &#39;.&#39;, &#39;&#39;);
//1234.57
 
//French Notation
$number_format_francais = number_format($number, 2, &#39;,&#39;, &#39;&#39;);
//1234,57
$number_format_francais = number_format($number, 3, &#39;,&#39;, &#39;&#39;);
//1234,568
 
echo $number_format_english;
//1234.57
echo $number_format_francais;
//1234,568

2、round()方法實作四捨五入

round() 函數對浮點數進行四捨五入。

<?php
 
//定义一个float型的变量
$number = 1234.5678;
 
//不保留小数
echo round($number);
//1235
 
//保留两位小数
echo round($number,2);
//1234.57
 
echo "<br>";
 
$number = 12345678;
 
//在千分位进行四舍五入
echo round($number,-4);
//12350000

3、sprintf() 格式化輸出實作四捨五入

字串格式化指令,主要功能是把格式化的資料寫入某個字串中。 sprintf 是個變參函數。

<?php
 
//定义一个正整数
$n =  43951789;
 
//定义一个负整数
$u = -43951789;
 
// ASCII 65 is &#39;A&#39;
$c = 65; 
 
printf("%%b = &#39;%b&#39;\n", $n); 
//%b = &#39;10100111101010011010101101&#39;
printf("%%c = &#39;%c&#39;\n", $c); 
//%c = &#39;A&#39; 
printf("%%d = &#39;%d&#39;\n", $n); 
//%d = &#39;43951789&#39; 
printf("%%e = &#39;%e&#39;\n", $n); 
//%e = &#39;4.395179e+7&#39; 
printf("%%u = &#39;%u&#39;\n", $n); 
//%u = &#39;43951789&#39; 
printf("%%u = &#39;%u&#39;\n", $u); 
//%u = &#39;4251015507&#39; 
printf("%%f = &#39;%f&#39;\n", $n); 
//%f = &#39;43951789.000000&#39; 
printf("%%o = &#39;%o&#39;\n", $n); 
//%o = &#39;247523255&#39; 
printf("%%s = &#39;%s&#39;\n", $n); 
//%s = &#39;43951789&#39; 
printf("%%x = &#39;%x&#39;\n", $n); 
//%x = &#39;29ea6ad&#39; 
printf("%%X = &#39;%X&#39;\n", $n); 
//%X = &#39;29EA6AD&#39; 
printf("%%+d = &#39;%+d&#39;\n", $n); 
//%+d = &#39;+43951789&#39; 
printf("%%+d = &#39;%+d&#39;\n", $u); 
//%+d = &#39;-43951789&#39;

推薦學習:《PHP影片教學

以上是php中實現四捨五入的方法有哪些的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn