json_encode 處理浮點數的雷
  • 2,213 views,
  • 2018-09-10,
  • 上傳者: 洪國恩,
  •  0
最近用 json_encode 儲存計算結果,因為計算結果有浮點數,就發現了神奇的現象。
要儲存的資料是
value = 3.36,但是透過 json_encode 之後,存進檔案竟然變成
{"value": 3.3599999999999999}
研究了一下發現,原來是 json_encode 預設採用 IEEE 754 的方式儲存,所以就 QQ 了~~
要解決這個方法很簡單,只需要調整 php.ini
把 serialize_precision 設為 -1 即可
serialize_precision = -1
或是透過 ini_set
ini_set("serialize_precision","-1");
也可以喔~~~
Facebook 討論區載入中...
資料夾 :
發表時間 :
2018-09-10 13:15:36
觀看數 :
2,213
發表人 :
洪國恩
部門 :
老洪的 IT 學習系統
QR Code :