2012-10-20 68 views
5

Tôi cần hiển thị số dấu chấm động với số chữ số thập phân được chỉ định (làm tròn), cụ thể lên đến hai chữ số thập phân mặc dù số không có phần phân số . Một cách mà tôi biết là sử dụng hàm sprintf() PHP như sau.Luôn hiển thị số chữ số thập phân cụ thể trong PHP (làm tròn)

echo sprintf("%0.2f", 123); 

Nó trả về 123.00.

echo sprintf("%0.2f", 123.4555); 

trả về 123.46 nhưng sau đây không trả lại những gì tôi cần.

echo sprintf("%0.2f", 123.455); // 5 is removed - the right-most digit. 

Tôi mong đợi nó trả lại 123.46 nhưng không. Nó trả về 123.45. Mặc dù nó không phải là một sự khác biệt rất lớn, tôi bằng cách nào đó cần phải trả lại 123.46 trong cả hai trường hợp.


Chức năng round() có thể thực hiện. echo round(123.455, 2);echo round(123.4555, 2); trả về 123.46 trong cả hai trường hợp nhưng tôi không thể nghĩ đến việc sử dụng hàm này vì nếu phần phân số không có mặt, nó sẽ không hiển thị chữ số thập phân. giống như echo round(123, 2); cho 123 và tôi cần 123.00.

Có chức năng nào trong PHP để đạt được điều này không?

Trả lời

7
number_format(123.455, 2, '.', '') 
Các vấn đề liên quan