我对MySQL数据库中的某些表有问题,并使用Laravel4读取它。这是如何在浮动(6,2)coloumn价格时看起来像结果:
如果我将相同的列放入varchar(6),这看起来像是:
有人知道问题是什么以及如何解决?我有其他表与float(5,2)列和laravel显示结果正确。我只使用Model :: get()从数据库中获取数据,而Model(模型是两次表中的名称)很简单:
class Model extends Eloquent
{
use SoftDeletingTrait;
protected $dates = ['deleted_at'];
protected $primaryKey = 'idreceive';
protected $table = 'model';
}
答案 0 :(得分:0)
问题是您使用逗号,
而不是点.
来分隔浮动小数。
所以你需要转换你的输入:
121,51
对此:
121.15
Here's an SO question on how to solve this problem
该答案的代码:
$string_number = '1.512.523,55';
// NOTE: You don't really have to use floatval() here, it's just to prove that it's a legitimate float value.
$number = floatval(str_replace(',', '.', str_replace('.', '', $string_number)));