ภาษาพีเอชพี/ประเภทของตัวแปร/จำนวนทศนิยม
Float
[แก้ไข | แก้ไขต้นฉบับ]Floating point number (หรือที่รู้จักกันใน floats, double, จำนวนจริง) เป็นจำนวนจริง ที่มีค่าเป็นทศนิยม
โดยมีรูปแบบไวยากรณ์ การประกาศตัวแปรดังนี้
<?php
$a = 4.22;
$b = 3.2e6;
$c = 2E-3;
?>
ขนาดของ float นั้นขึ้นอยู่กับแพล็ตฟอร์มที่ทำงานอยู่ ค่าสูงสุดที่เก็บได้จะอยู่ที่ประมาณ 1.8e308 และมีความแม่นยำอยู่ที่ 14 ตัว(ซึ่งเป็นค่ามาตรฐานของ 64 bits IEEE format)
คำเตือน : ความแม่นยำของ float
ตัวอย่างง่าย ๆ คือเศษ 0.1 หรือ 0.7 นั้นเมื่อแปลงค่า binary ภายในแล้วจะเสียความแม่นยำไป
ซึ่งทำให้เกิดผลลัพธ์แปลก ๆ เช่น floor((0.1*0.7)*10) จะได้ค่า 7 แทนที่ควรจะเป็น 8 เนื่องจากค่า binary ภายในจะเป็น 7.9 หรืออะไรทำนองนั้น
เป็นสาเหตุที่ว่ามันเป็นไปไม่ได้ที่จะแสดง เศษส่วน บางค่าเป็นจำนวนเต็มในรูปแบบจำกัดจำนวนได้
เช่น 1/3 เป็น 0.3 เนื่องจากจะมีการปัดลง
เพราะฉะนั้นจงอย่าฝากความหวังกับเลขตัวสุดท้ายของ float และอย่าเอา float ไปเทียบกับค่าอื่นเพื่อทดสอบ ความเท่ากัน