Laravel 5.3,PHP 7.2和货币字段存在问题。
这是我的迁移脚本,我也将“数量”字段也更改为小数,但不起作用。
public function up()
{
Schema::create('order_details', function(Blueprint $table)
{
$table->integer('id', true);
$table->integer('order_id');
$table->string('product_id', 15);
$table->string('unit', 10);
$table->double('price', 10,2)->default(0.00);
$table->double('quantity', 10, 2)->default(0);
$table->double('amount', 18,2)->default(0.00);
$table->double('sup_price',10,2)->default(0.00);
$table->double('sup_quantity',4,2)->default(0);
$table->double('sup_amount',18,2)->default(0.00);
});
}
在我的控制器中,我已经对该值进行了硬编码
$modelName->amount = 24.87;
$modelName->save();
当我查看数据库时,它只存储24个。
它可能有什么问题。谢谢
答案 0 :(得分:2)
尝试一下:
$modelName->amount = number_format(24.87, 2, '.', '');
这适用于m