首頁 > 後端開發 > PHP問題 > php怎麼不四捨五入的保留一位小數

php怎麼不四捨五入的保留一位小數

青灯夜游
發布: 2023-03-16 09:04:01
原創
5628 人瀏覽過

方法:1、利用“*”運算子將小數擴大10倍,語法“$a=小數*10;”,將小數點向後移一位;2、用floor()對擴大後的小數向下取整,捨去小數部分,語法「$b=floor($a);」;3、將取整後的數除以10,語法「$c=$b/10;」。

php怎麼不四捨五入的保留一位小數

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

php保留一位小數(不四捨五入)的方法

例如3.1625取小數點後1位,最後1位不能四捨五入。結果:3.1

在php中,可以使用floor 函數實作不四捨五入的保留一位小數。

floor 函數的作用使用捨去取整。

例如,floor(4.66456) 結果:4 ;floor(9.1254) 結果9

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

$a=小数*10;
$b=floor($a);
$c=$b/10;
登入後複製

直接簡化為:

floor(小数*10)/10
登入後複製

範例:

<?php
header(&#39;content-type:text/html;charset=utf-8&#39;);   
echo (floor(3.1625*10)/10)."<br>";
echo (floor(0.5985*10)/10)."<br>";
echo (floor(1.1425*10)/10)."<br>";
?>
登入後複製

php怎麼不四捨五入的保留一位小數

#擴充知識:保留小數點後幾位(四捨五入)的方法

1、round 函數

round(小数,保留位数)
登入後複製

2、sprintf 函數

sprintf("%01.位数值f", 小数)
登入後複製

實現四捨五入,並且如果是不帶小數位數的,會自動用指定的字元(指定的0)補至指定的小數位數

echo sprintf("%01.2f", 5.228);  //  5.23
echo sprintf("%01.2f", 5.224);  //  5.22
echo sprintf("%01.2f", 5);      //  5.00
登入後複製

3、number_format 函數

number_format(小数,保留位数)
登入後複製

如果是不帶小數位數的,會自動用0補到指定的小數位數

echo number_format(5.228,2);    //  5.23
echo number_format(5.224,2);    //  5.22
echo number_format(5,2);        //  5.00
登入後複製

推薦學習:《PHP影片教學

以上是php怎麼不四捨五入的保留一位小數的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
php
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板