หัวข้อ: PHP ต้องการ FIX number format 2ตัวสุดท้ายเป็น .69 เริ่มหัวข้อโดย: Mrpoohling ที่ 14 กุมภาพันธ์ 2017, 11:57:36 ผมต้องการ FIX number format หลัง . เป็น 69 ครับ
เช่น 1234.69 หรือ 500.69 ให่้มันตายตัวไว้ที่ 69 จะเขียนได้อย่างไรครับ :'( :'( หัวข้อ: Re: PHP ต้องการ FIX number format 2ตัวสุดท้ายเป็น .69 เริ่มหัวข้อโดย: snohomish ที่ 14 กุมภาพันธ์ 2017, 12:41:13 โค๊ด: $a= "50645.65"; $b = number_format($a); //ทำให้เป็นจำนวนเต็ม $c = $b.".69"; // เชื่อมด้วย 0.69 echo $c; แบบบ้าน ๆ ครับ หัวข้อ: Re: PHP ต้องการ FIX number format 2ตัวสุดท้ายเป็น .69 เริ่มหัวข้อโดย: Mrpoohling ที่ 14 กุมภาพันธ์ 2017, 13:03:43 ขอบคุณครับ :'( :'(
หัวข้อ: Re: PHP ต้องการ FIX number format 2ตัวสุดท้ายเป็น .69 เริ่มหัวข้อโดย: f206cs ที่ 17 กุมภาพันธ์ 2017, 15:44:55 โค๊ด: $a= "50645.65"; $b = number_format($a); //ทำให้เป็นจำนวนเต็ม $c = $b.".69"; // เชื่อมด้วย 0.69 echo $c; แบบบ้าน ๆ ครับ ผมว่าใช้แบบนี้ดีกว่าครับ โค๊ด: $a = 50645.65; $b = floor($a); $c = $b + 0.69; แต่ถ้าเลขเป็นลบให้ใช้แบบนี้ครับ $a = -50645.65; $aa = $a*(-1); $b = floor($aa); $bb = $b + 0.69; $c = $b*(-1); *** ปัญหาคือ number_format() กรณีที่ทศนิยมเกิน 0.5 มันจะปัดเป็น 1 ครับ ดังนั้นตามตัวอย่างข้างบนจาก 50645.65 ถ้าใช้ number_format แทนที่จะได้ 50645.69 มันจะได้ 50646.69 แทนครับ เพราะ number_format(50645.65) มันจะได้ 50646 ครับ ไม่ใช่ 50645 *** หัวข้อ: Re: PHP ต้องการ FIX number format 2ตัวสุดท้ายเป็น .69 เริ่มหัวข้อโดย: cloverink ที่ 17 กุมภาพันธ์ 2017, 18:07:04 ใช้แบบนี้ก็ได้ครับ ถ้ากลัวเรื่องปัดตัวเลข กับตัวเลขติดลบ ถ้าไม่อยากได้ comma ก็เอา number_format ออก
number_format(intval($a)) . ".69" |