PHP的floor函數問題。
最近在寫一個有關金融的專案。裡面牽涉到好多資金小數的問題。有一次用到floor想實現向下取整精確到兩位小數時,突然發現如下程式碼不正常了。
$money=271.28; echo $money=floor($money*pow(10,2))/100
後來查了很多資料,在php官網上看到了這麼一點:
所以永遠不要相信浮點數結果精確到了最後一位,也永遠不要比較兩個浮點數是否相等。
後來我印了上面運算的結果:
printf("%.12f", $money*pow(10,2));
原來是精確度問題。暫時還沒找到統一的解決方法。我只有在程式碼邏輯中加入if ($money - round ( $money, 2 ) < 0.00001) {
}else{
$money=floor($money*pow(10,2))/100;
}

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

php提交表单通过后,弹出的对话框怎样在当前页弹出php提交表单通过后,弹出的对话框怎样在当前页弹出而不是在空白页弹出?想实现这样的效果:而不是空白页弹出:------解决方案--------------------如果你的验证用PHP在后端,那么就用Ajax;仅供参考:HTML code

如何使用MySQL的FLOOR函數向下取整在MySQL中,FLOOR函數用於向下取整。如果你需要將一個浮點數或一個有小數點的數字向下取整到最接近的整數,FLOOR函數將會是一個非常有用的工具。本文將介紹如何使用MySQL的FLOOR函數以及提供一些實際的範例程式碼。首先,讓我們來了解FLOOR函數的語法。 FLOOR函數的語法如下:FLOOR(x)其中,x代表

使用Java的Math.pow()函數計算數值的冪次方在數學運算中,我們常常需要計算一個數值的冪次方。在Java中,我們可以使用Math.pow()函數來進行冪運算。本文將介紹Math.pow()函數的使用方法,並給出一些程式碼範例。 Math.pow()函數是Java中數學函式庫中的一個靜態方法,用來計算一個數值的冪次方,並傳回計算結果。它的語法如下:Math.p

本文深入探討兩種主流共識機制:權益證明(PoS)與工作量證明(PoW)。 PoS要求驗證者質押代幣來獲得驗證交易的權力,具有節能、可擴展性好等優點,但也可能導致財富集中。 PoW要求礦工解決複雜數學難題來驗證交易,安全性更高、去中心化程度更高,但能耗大、可擴展性較差。本文比較了 PoS 和 PoW 的原理、優缺點,以及在區塊鏈領域的應用,幫助讀者了解它們在共識機制中扮演的關鍵角色。

不用数据库来实现用户的简单的下载,代码如下,但是却不能下载,请高手找下原因,文件路劲什么的没问题。

图片消失如何解决先是图片文件上传$file=$_FILES['userfile']; if(is_uploaded_file($file['tmp_name'])){$query=mysql_query("INSERT INTO gdb_banner(image_src ) VALUES ('images/{$file['name'

图片消失如何解决先是图片文件上传$file=$_FILES['userfile']; if(is_uploaded_file($file['tmp_name'])){$query=mysql_query("INSERT INTO gdb_banner(image_src ) VALUES ('images/{$file['name'
