round
創(chuàng)新互聯(lián)專注于宜昌網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗。 熱誠為您提供宜昌營銷型網(wǎng)站建設(shè),宜昌網(wǎng)站制作、宜昌網(wǎng)頁設(shè)計、宜昌網(wǎng)站官網(wǎng)定制、微信小程序開發(fā)服務(wù),打造宜昌網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供宜昌網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。
(PHP?3,?PHP?4,?PHP?5)
round?--?對浮點數(shù)進行四舍五入
例子?1.?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
?
使用字符串截取函數(shù)explode,因為PHP是弱類型語言,所以可以直接使用
?
$x=98.6;
$y=explode(".",$x);
echo?$y[0]."------";//98
echo?$y[1];?//6
?
兩種取值法,看你需要什么結(jié)果:
1 四舍五入(簡單,自帶函數(shù)就可以解決)
$youWantNum?=?sprintf('%.2f',?$num);
//有人說用floor,floor是取整的函數(shù),無法直接取小數(shù);但可以轉(zhuǎn)換得到結(jié)果,那就是下面的例子
2 舍去后面的,不管是什么
/*
*$num?要處理的浮點數(shù)
*$digits?保留的小數(shù)位數(shù)
*?實現(xiàn)思路:先乘以10的小數(shù)位數(shù)次方,用floor向下取整,再除以除數(shù)得到舍去后面位數(shù)的結(jié)果
*?最后再用sprintf配合位數(shù)再取一次值(此處是為了解決有些數(shù)字,最后一位為零時不顯示問題)
*/
function?floorFloat($num,?$digits)?{
$num?=?floatval($num);
$multiple?=?pow(10,?$digits);
$tempNum?=?floor($num*$multiple);
return?sprintf('%.'.$digits.'f',?$tempNum/$multiple);
}
可以先轉(zhuǎn)換成字符串,然后,再將小數(shù)點做分隔,然后取出相應(yīng)的數(shù)據(jù)。
PHP 中的 round() 函數(shù)可以實現(xiàn)
round() 函數(shù)對浮點數(shù)進行四舍五入。
round(x,prec)
參數(shù)說明
x 可選。規(guī)定要舍入的數(shù)字。
prec 可選。規(guī)定小數(shù)點后的位數(shù)。
返回將 x 根據(jù)指定精度 prec (十進制小數(shù)點后數(shù)字的數(shù)目)進行四舍五入的結(jié)果。prec 也可以是負數(shù)或零(默認值)。
注釋:PHP 默認不能正確處理類似 "12,300.2" 的字符串。
例如:
?php
echo round(-4.635,2);
?
輸出: -4.64
php去掉數(shù)字小數(shù)點后面的零:
1、ceil — 進一法取整
說明
float ceil ( float value )
返回不小于 value 的下一個整數(shù),value 如果有小數(shù)部分則進一位。ceil() 返回的類型仍然是 float,因為 float 值的范圍通常比 integer 要大。
例子 1. ceil() 例子
?php
echo ceil(4.3); // 5
echo ceil(9.999); // 10
?
2、intval—對變數(shù)轉(zhuǎn)成整數(shù)型態(tài)
?php
echo intval(4.3); //4
echo intval(4.6); // 4
?