Tôi đang viết một kịch bản PHP trông qua một bảng DB các giá trị float, mà có xu hướng hơi nhỏ, chẳng hạn như:Tại sao MySQL lại trả về một số ký tự trôi nổi trong ký pháp khoa học, nhưng không phải là một số khác?
0.00052
0.00134
0.00103
0.00149
0.00085
0.00068
0.00077
0.00088
0.00169
0.00063
Vì lý do lạ lẫm với tôi, một số giá trị xuất hiện trong DB trong khoa học ký hiệu, chẳng hạn như:
1.12305e-06
bảng này được thiết lập để nổi, và tôi đã thử tất cả các cách thức của các chức năng trong PHP để buộc các con số để hiển thị như thập phân, không có kết quả. Hãy thử như tôi có thể, tôi không thể để có được bảng số này được thống nhất trong tất cả các trường hợp.
Bất kỳ đề xuất nào về cách giải quyết vấn đề này? Đã thử đánh máy vào (float)
và sử dụng number_format()
và một số tùy chọn khác, nhưng không thay đổi mỗi lần.
Không chắc chắn trên đầu của tôi, nhưng MySQL có hiển thị các giá trị trong ký pháp khoa học không? Tôi biết PHP chắc chắn. Bạn có thể hiển thị trường hợp kiểm tra hoàn chỉnh hơn về cách bạn xử lý các giá trị đó không? – deceze
làm thế nào để bạn hiển thị chúng để tìm ra chúng ở định dạng này? Là nó mysql đó là trả lại cho họ như thế này, hoặc là nó thực sự chỉ là đại diện của php? bạn có sử dụng 'var_dump',' echo', 'print', v.v. không? – Nanne
Bất kỳ lý do nào bạn không sử dụng kiểu dữ liệu 'DECIMAL'? – Romain