2012-09-15 79 views

Trả lời

4

Bạn sẽ muốn sử dụng printf hoặc sprintf. Bạn có thể đọc thêm về nó trong php docs.

52

Hãy thử number_format:

echo number_format("5.2",2) 
+0

[. Điều này cũng có thể hữu ích] (http : //php.net/manual/en/function.money-format.php) – FluffyJack

+2

Hãy nhớ rằng number_format trả về một chuỗi, vì vậy float của bạn sẽ không còn là kiểu float nữa. nếu bạn cố gắng và sử dụng số kết quả trong tính toán, bạn có thể nhận được kết quả không mong muốn. Bạn có thể đưa nó trở lại float bằng cách gói nó trong floatval() – Baxny

+0

Lưu ý: '+ number_format (" 5.2 ", 2);' sẽ cho bạn một số trái ngược với 'number_format (" 5.2 ", 2)' một chuỗi. Dù sao, 'sprintf ('% 0.2f ', $ num) 'luôn là sở thích của tôi trong các tình huống chung. Không bao giờ có lý do hợp lệ để thực hiện kiểm tra điểm chuẩn, hãy cho tôi biết trong trường hợp bạn có lý do hợp lệ để sử dụng ngoại trừ tùy chọn cá nhân (hoặc ngữ cảnh). Chúc mừng! – Fr0zenFyr

2

Nếu bạn chỉ đơn giản là cố gắng để đảm bảo một số được hiển thị với hai chữ số thập phân, bạn cũng có thể sử dụng number_format, hoặc (nếu điều này là một giá trị tiền tệ) money_format.

ví dụ: echo number_format('5.2', 2);

-3

Hãy thử điều này:

number_format((float)$foo, 2, '.', ''); 
+0

Vui lòng xem xét chỉnh sửa câu trả lời của bạn để bao gồm giải thích cách mã của bạn giải quyết vấn đề trong tầm tay. – Matt

Các vấn đề liên quan