PHP四捨五入、取整、round函數使用

來源:互聯網
上載者:User
這篇文章主要介紹了PHP四捨五入、取整、round函數使用樣本,需要的朋友可以參考下

小數例子:

PHP保留兩位小數並且四捨五入

複製代碼 代碼如下:

$n=0.1265489;echo sprintf("%.2f", $n); // 0.13

大家可以看到我們用到了sprintf函數對$n進行了格式化%.2f是目標格式,其中2表示兩位f表示float(浮點型) 第3為小數6被四捨五入
再看個例子

複製代碼 代碼如下:

$n=0.1265489echo substr(sprintf("%.3",$n),0,-1);// 0.12

代碼輸出了保留2為小數沒有四捨五入,實際上我們瞭解了sprintf的特性會四捨五入小數後我們多保留了一位,然後用substr來截取前2位

取整例子:

複製代碼 代碼如下:

echo ceil(4.1);    // 5echo ceil(9.999);  // 10

ceil函數是向上取整函數,什麼叫向上呢? 就是說如果超出一點點那就向前進一位如例子中4.1就變成了5。

跟它相反還有一個函數叫floor我們看看它的用法

複製代碼 代碼如下:

echo floor(4.1);   // 4echo floor(9.999); // 9

floor的特性在第二個輸出中顯的特別明顯,那就是不給你多少位小數哪怕是無限接近10也沒有用向下取到的整數就是9。

round函數

複製代碼 代碼如下:

<?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.05  echo round(5.055, 2);    // 5.06?>

round函數在PHP手冊中的說明是:

float round ( float $val [, int $precision = 0 [, int $mode = PHP_ROUND_HALF_UP ]] )
返回將 val 根據指定精度 precision(十進位小數點後數位數目)進行四捨五入的結果。precision 也可以是負數或零(預設值)。

round 的參數一是資料來源,參數二是要保留的小數位而且之後一位(比如你輸入2那麼第3為是之後一位)被四捨五入,當他是負數的時候,從資料來源最後一位開始往前數相應的長度制0並將最後一位四捨五入比如round(123456,-2) 就是123456從6開始往前數兩位都變成零,並且最後一位5(從後往前數第一位是6最後一位是5)被四捨五入,輸出123500

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.