Tôi cần phải thêm, nhân và so sánh các giá trị tiền tệ trong PHP và cần phải chắc chắn rằng nó là chính xác xuống một xu duy nhất.Thực tiễn tốt nhất để làm việc với các giá trị tiền tệ trong PHP?
Một cách là lưu trữ mọi thứ trong phao, sử dụng vòng trước và sau mỗi thao tác và máy tâm trí epsilon khi so sánh cho bình đẳng. Khá imh.
Một cách khác là lưu trữ toàn bộ thứ như xu trong các kiểu dữ liệu nguyên, cộng với nhớ chuyển đổi qua lại bất cứ lúc nào tôi làm việc với cơ sở dữ liệu (mysql, nơi tôi sử dụng kiểu dữ liệu thập phân). Inelegant, và nhiều cạm bẫy lỗi, imho.
Cách khác là phát minh "kiểu dữ liệu" của riêng tôi, lưu trữ tất cả các giá trị trong chuỗi ("34.12") và tạo các hàm thay thế toán học của riêng tôi. Hàm này sẽ chuyển đổi giá trị thành số nguyên bên trong, thực hiện phép tính và xuất kết quả lại thành chuỗi. Ngạc nhiên phức tạp, imho.
Câu hỏi của tôi: thực tiễn tốt nhất để làm việc với các giá trị tiền tệ trong PHP là gì? Cảm ơn!
Điều này không đơn giản, thực hành tốt nhất và rất tệ khuyên bảo. Xin vui lòng, bằng mọi cách, đóng gói các hàm hoạt động với các hàm toán học chính xác tùy ý, nhưng vui lòng không làm theo lời khuyên ở trên. Câu trả lời tốt nhất là bởi Andrew Dunn. –