本文目錄一覽:
PHP 保留小數點後2位
兩種取值法,看你需要什麼結果:
1 四捨五入(簡單,自帶函數就可以解決)
$youWantNum = sprintf(‘%.2f’, $num);
//有人說用floor,floor是取整的函數,無法直接取小數;但可以轉換得到結果,那就是下面的例子
2 捨去後面的,不管是什麼
/*
*$num 要處理的浮點數
*$digits 保留的小數位數
* 實現思路:先乘以10的小數位數次方,用floor向下取整,再除以除數得到捨去後面位數的結果
* 最後再用sprintf配合位數再取一次值(此處是為了解決有些數字,最後一位為零時不顯示問題)
*/
function floorFloat($num, $digits) {
$num = floatval($num);
$multiple = pow(10, $digits);
$tempNum = floor($num*$multiple);
return sprintf(‘%.’.$digits.’f’, $tempNum/$multiple);
}
php怎麼保存小數點後兩位並且四捨五入
php保留兩位小數並且四捨五入
代碼如下:
$num = 123213.666666;
echo sprintf(“%.2f”, $num);
php保留兩位小數並且不四捨五入
代碼如下:
$num = 123213.666666;
echo sprintf(“%.2f”,substr(sprintf(“%.3f”, $num), 0, -2));
php進一法取整
代碼如下:
echo ceil(4.3); // 5
echo ceil(9.999); // 10
php捨去法,取整數
代碼如下:
echo floor(4.3); // 4
echo floor(9.999); // 9
PHP保留兩位小數的幾種方法
int inthestr(char *s,char ch)
{
while(*s!=’\0′){
if(*s==ch)
return 1;
s++;
}
return 0;
}
請教,php保留兩位小數,但不四捨五入
使用bc一類的函數,按字符串方式運算即可。
/**
* 數值非四捨五入保留兩位小數
* @author Zjmainstay
* @website
* @param $num 數值
* @return 保留兩位小數
*/
function getNum($num, $scale = 2) {
$numStr = (string)$num . str_repeat(‘0’, $scale);
//匹配精度前的數值
if(preg_match(‘#^\d+\.\d{0,’.$scale.’}#’, $numStr, $match)) {
return $match[0];
} else {
return ‘0’;
}
}
echo getNum(10.0253) . “\n”;
echo getNum(0.5) . “\n”;
用php使數字保留小數點後兩位怎麼做的?
PHP 中的 round() 函數可以實現
round() 函數對浮點數進行四捨五入。
round(x,prec)
參數說明
x 可選。規定要舍入的數字。
prec 可選。規定小數點後的位數。
返回將 x 根據指定精度 prec (十進制小數點後數字的數目)進行四捨五入的結果。prec 也可以是負數或零(默認值)。
注釋:PHP 默認不能正確處理類似 “12,300.2” 的字符串。
例如:
?php
echo round(-4.635,2);
?
輸出: -4.64
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/237800.html