當前位置:首頁 » 編程語言 » php保留兩位小數的函數

php保留兩位小數的函數

發布時間: 2023-05-12 14:12:47

⑴ 請教,php保留兩位小數,但不四捨五入

使用bc一類的函數,按字元串方式運算即可。
/**
*數值非四捨五入保留兩位小數
*@authorZjmainstay
*@websitehttp://www.zjmainstay.cn
*@param$num數值
*@return保留兩位小數
*/
functiongetNum($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';
}
}

echogetNum(10.0253)." ";
echogetNum(0.5)." ";

⑵ 用php使數字保留小數點後兩位怎麼做的

PHP 中的 round() 函數可以實現

round() 函數對浮點數進行四捨五入。

round(x,prec)

參數說明
x 可選。規定要舍入的數字。
prec 可選。規定小數點後的位數。

返回將 x 根據指定精度 prec (十進制小數點後數字的數目)進行四捨五入的結果。prec 也可以是負數或零(默認值)。

注釋:PHP 默認不能正確處理類似 "12,300.2" 的字元串。

例如:
<?php
echo round(-4.635,2);
?>

輸出: -4.64

⑶ php 如何保留2位小數

今天處理數據的時候因為要保留2位小數,查看幫助手冊
<?php

$number=1234.56;

//englishnotation(default)
$english_format_number=number_format($number);
//1,235

//Frenchnotation
$nombre_format_francais=number_format($number,2,',','');
//1234,56

$number=1234.5678;

//
$english_format_number=number_format($number,2,'.','');
//1234.57

?>

⑷ 請教,php保留兩位小數,但不四捨五入

$n=123.456789;

echofloor($n*100)/100;

⑸ 請教,php保留兩位小數,但不四捨五入

round() 函數知橡握

語法
round(x,prec)

參數

x
可選。搭慶規定要舍入的數字。

prec
可選。規定小數點後的位數。

說明

返回將 x 根據指定精度 prec (十進制小數點後數字的數目)進行四舍如森五入的結果。prec 也可以是負數或零(默認值)。

⑹ PHP怎麼定義保留2位小數的變數

在php中要保留兩位小數的方法有很多種辦法,有如:printf,substr,number_format,round等等方法


方法一

sprintf()函數 ,sprintf() 函數把格式化的字元串寫寫入一個變數中

<?php
$number=123;
$txt=sprintf("%f",$number);
echo$txt;
?>
輸出:
123.000000



方法二substr()函數

$num=123213.666666;
echosprintf("%.2f",substr(sprintf("%.3f",$num),0,-2));



方法三 number_format()函數

$number=1234.5678;
$nombre_format_francais=number_format($number,2,',','');//1234,57
$english_format_number=number_format($number,2,'.','');//1234.57(我一般用這個)

方法四 round 函數,round() 函數對浮點數進行四捨五入。

<?php
echo(round(0.60));
echo(round(0.50));
echo(round(0.49));
echo(round(-4.40));
echo(round(-4.60));
?>
輸出:
1
1
0
-4
-5

如果要保留小數,後來參數根保留小數位數即可。

$number=1234.5678;
echoround($number,2);//1234.57

⑺ php 兩個變數相減後,始終保持兩位小數,如何實現

$a=3;
$b=2;
$c=$a-$b;
$c=$c.'.00';
echo $c;
//1.00
$a=3.111111;
$b=2.2665;
$c=round($a-$b,2);

echo $c;

⑻ PHP如何顯示兩位小數

一round()函數:
floatround(float$val[,int$precision])
返回將val根據指定精度precision(十進制小數點後數字的數目)進行四捨五入的結果。
precision也可以是負數或零(默認值)。
例如:
echoround(3.6);//4
echoround(3.6,0);//4
echoround(1.95583,2);//1.96
$a=12345678;
echoround($a,-3);//12346000
但是有時候如遇到這樣的數字就不行了,12.3,13.4,15,6
//我們要轉為12.30,13.40,15,60,這樣的值,就得用另外一種強大的方法了。
二sprintf()[或者printf()函數]函數
此函數源於c中強的printf()函數。所以是一個強大的格式化工具。
說明:
stringsprintf(string$format[,mixed$args[,mixed$...]])
format包含:
其格式(format)有如下值:
d有符號10進制整數
i有符號10進制整數
o無符號8進制整數
u無符號10進制整數
x無符號的16進制數字,並以小寫abcdef表示
X無符號的16進制數字,並以大寫ABCDEF表示
F/f浮點數
E/e用科學表示格式的浮點數
g使用%f和%e表示中的總的位數表示最短的來表示浮點數G同g格式,但表示為指數
c單個字元
s字元串
%顯示百分號本身

⑼ PHP如何保留2位小數

要分2種情況。
1、數值不變,只在輸出時保留2位小數。
echo sprintf('%.2f', 3.1415);
2、數值上保留2位
echo round(3.1415, 2);

⑽ PHP 保留小數點後2位

兩種取值法,看你需要什麼結果:

1 四捨五入(簡單,自帶函數就可以解決)

$youWantNum=sprintf('%.2f',$num);
//有人說用floor,floor是取整的函數,無法直接取小數;但可以轉換得到結果,那就是下面的例子

2 捨去後面的,不管是什麼

/*
*$num要處理的浮點數
*$digits保留的小數位數
*實現思路:先乘以10的小數位數次方,用floor向下取整,再除以除數得到捨去後面位數的結果
*最後再用sprintf配合位數再取一次值(此處是為了解決有些數字,最後一位為零時不顯示問題)
*/
functionfloorFloat($num,$digits){
$num=floatval($num);
$multiple=pow(10,$digits);
$tempNum=floor($num*$multiple);
returnsprintf('%.'.$digits.'f',$tempNum/$multiple);
}
熱點內容
android管家 發布:2025-07-18 10:25:02 瀏覽:68
網站訪問地區 發布:2025-07-18 10:24:55 瀏覽:258
緩存傳文件 發布:2025-07-18 10:18:33 瀏覽:154
生信差異分析的腳本 發布:2025-07-18 10:14:50 瀏覽:597
微信打開網頁繼續訪問 發布:2025-07-18 10:09:50 瀏覽:49
蔬菜解壓游戲大全 發布:2025-07-18 10:00:12 瀏覽:71
linuxand 發布:2025-07-18 09:48:27 瀏覽:725
為什麼安卓的app下載不了 發布:2025-07-18 09:47:45 瀏覽:178
如何用伺服器搭建網路 發布:2025-07-18 09:36:05 瀏覽:451
迷你世界電腦版怎麼改密碼 發布:2025-07-18 09:26:41 瀏覽:51