我想知道为什么会发生这种情况,因为我觉得很奇怪。在一个表格中,提交的价格是这样的。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 Float描述