首頁  >  文章  >  後端開發  >  php實作保留兩位小數的三種方法

php實作保留兩位小數的三種方法

黄舟
黄舟原創
2017-11-14 14:36:0420258瀏覽

看到題目相信很多小夥伴都會想到使用四捨五入的方法來實現,這也是一個辦法,那麼還有其他的方法呢,下面我們就帶大家了解一下php實現保留兩位小數的幾種方式!

php小數點後取兩位數的方法。

方法一、常用到小數點後取幾位,但不能進位的情況。
例如3.149569取小數點後兩位,最後兩位不能四捨五入。結果:3.14。

可以使用函數floor。
此函數是捨去取整。例如,floor(4.66456) 結果:4 。 
floor(9.1254) 結果9 。

因此,去小數點後兩位,需要先乘以100,然後捨去取整,再除以100,即:

$a=floor(3.149569*100)/100

計算百分數:

程式碼範例:

$successRate = floor((2/3'])*10000)/10000*100;
$result = $successRate.'%';

輸出結果:

66.67%

#方法二、round函數


# #說明


float round ( float val [, int precision])

傳回將val 根據指定精度precision(十進位小數點後數字的數目)進行四捨五入的結果。

precision 也可以是負數或零(預設值)。

範例:

  程式碼範例:

<?php
echo round(3.4);         // 3
echo round(3.5);         // 4
echo round(3.6);         // 4
echo round(3.6, 0);      // 4
echo round(1.95583, 2);  // 1.96
echo round(1241757, -3); // 1242000
echo round(5.045, 2);    // 5.04
echo round(5.055, 2);    // 5.06
?>

注意:

在對正好一半的分數進行舍入時 round() 在偶數次捨去,在奇數次進位。

如果想要迫使它對 .5(或 .05)總是向一個方向舍入,加上或減去一個很小的因子。

對一半值捨去對另一半值進一的背後原因是避免傳統的銀行問題,即如果總是捨去則銀行從顧客那裡多拿了錢,如果總是進一則銀行最終會損失了錢。
對此平均舍入則在統計上達到了平衡。  三、

sprintf

函數

最後一種是使用sprintf函數,請參考文章:關於php中sprintf()函數的用法分析中的介紹。 總結:

本文為大家介紹了三種方法實作php保留兩位小數的實例、每個方法都有它的不同,可以根據自己的需求來選擇適合的一種! 相關推薦:

PHP保留兩位小數並且四捨五入及不四捨五入的方法

#php 如何用去尾法保留兩位小數

#JS和php保留兩位小數範例會四捨五入使用函數toFixed()

######

以上是php實作保留兩位小數的三種方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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