草庐IT

MoneyType

全部标签

php - 如何将 Symfony 形式的 MoneyType 输入覆盖为 ="number"类型?

SymfonyMoneyTypeField呈现为inputtype="text",允许用户在字段中输入他们想要的任何内容。我如何覆盖它以呈现为inputtype="number"以便用户只能输入数字字符?$formBuilder->add("amount",MoneyType::class,['currency'=>'USD']);当前输出:Amount$我要实现的目标:Amount$我试图简单地覆盖属性类型,但所做的只是在末尾添加第二个type属性,这没有用,因为它显然是无效的HTML。$formBuilder->add("amount",MoneyType::class,['att

php - Symfony2 MoneyType 与除数 : integer conversion leads to wrong database values

我们将所有与货币相关的值都以美分的形式存储在我们的数据库中(ODM但ORM的行为可能相同)。我们使用MoneyType将面向用户的值(12,34€)转换为他们的美分表示(1234c)。typicalfloatprecision这里出现了问题:由于精度不足,许多情况下会产生舍入误差,而这些误差仅在调试时可见。MoneyType会将传入的字符串转换为可能不精确的float("1765"=>1764.9999999998)。一旦你坚持这些值(value)观,事情就会变得糟糕:classPrice{/***@varint*@MongoDB\Field(type="int")**/protect