|
|
|
บวกตัวเลขจำนวนมาก ปรากฎว่า ทศนิยมเกินมา 0.05 รบกวนกูรูด้วย |
|
|
|
|
|
|
|
number_format("จำนวนตัวเลข","ทศนิยม")
พอเอาค่าที่เป็นตัวเลข โดยยังไม่ผ่าน number_format มารวมกัน เช่นตัวเลข หมื่นล้าน ตรงทศนิยมจะเกินมา เช่น
ค่าที่ 1 เท่ากับ 10,821,843,074.00
ค่าที่ 2 เท่ากับ 14,711,652.75
พอระบบรวมกัน จะได้ 10,837,648,275.80 (ซึ่งผิด)
จริงๆ แล้วต้องได้ 10,836,554,726.75
ส่วนตัวแล้วคิดว่า มันปัด .75 เป็น .80 แน่
*****ไม่ทราบว่ามีวิธีแก้มั้ยครับ ท่านกูรูผู้รู้
Tag : PHP, MySQL
|
|
|
|
|
|
Date :
2014-02-25 13:36:07 |
By :
มังกรบิน |
View :
654 |
Reply :
2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (PHP)
$num1 = 10821843074.00;
$num2 = 14711652.75;
echo number_format($num1+$num2,2);
//หรือ
echo bcadd($num1,$num2,2);
|
ประวัติการแก้ไข 2014-02-25 13:58:10
|
|
|
|
Date :
2014-02-25 13:57:20 |
By :
mangkunzo |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอบคุณครับ เจอข้อผิดพลาดคือ ผมใส่ "" ไปในวงเล็บ เหออออ ความรู้ใหม่เลยครับ เพราะว่า ถ้าตัวเลขน้อยๆ จะไม่เห็นผล พอเลขเยอะ เห็นผลเลย echo number_format($num1+$num2,2);
ขอบคุณมากมายครับ ที่ทำให้ผมสังเกตความแตกต่าง
|
|
|
|
|
Date :
2014-02-25 14:51:45 |
By :
มังกรบิน |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 01
|