[英]Php Transform string to float adds decimal places
我想知道為什么會發生這種情況,因為這對我來說似乎很奇怪。 在表單中提交的價格看起來像這樣1.188,00 €
(這在一個例子中!)
使用表單中的原始數據,轉換結果為1188.008364
$colorP = str_replace(',', '.', str_replace('.', '', $value['_gravity_form_lead']['92.2']));
$colorP = preg_replace('/\s+/', '', $colorP);
$colorP = preg_replace('/[^0-9\.]/ui','',$colorP);
echo $colorP; // result-> 1188.008364
額外的十進制數字來自哪里? 很確定這可以進行不同的轉換,所以我願意接受建議。
非常感謝您的回答
附加十進制數字的原因是轉換導致float
並且不是很精確。 PHP 浮點說明
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.