【问题标题】:PHP Laravel How to prevent float from removing zero after point?PHP Laravel如何防止浮点数在点后删除零?
【发布时间】:2022-01-28 05:40:44
【问题描述】:

在 mysql 数据库表中,我有双类型列,它的值类似于 10.12 , 15.88 , 10.00 等

在获取所有这些值时,它会返回响应 10.12 15.88 10

我想保留 .00 的值 10.00 但它只给出 10 .? 用 float 和 double 类型尝试过 它适用于十进制类型,但值返回双引号“10.00”所以它被认为是字符串 我需要它作为浮点型或双精度型

【问题讨论】:

  • 然后在db中你可以设置像double(10,2)这样的类型
  • @DevsiOdedra in db 我设置的和 double(10,2) 完全一样
  • 你能发布表的架构和你如何“返回”它的 SQL 语句吗?

标签: php mysql laravel


【解决方案1】:

你可以使用 Laravel 的属性转换https://laravel.com/docs/8.x/eloquent-mutators#attribute-casting。模型的 $casts 属性提供了一种将属性转换为常见数据类型的便捷方法。

<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Model;

class User extends Model
{
    /**
     * The attributes that should be cast.
     *
     * @var array
     */
    protected $casts = [
        'column_name' => 'decimal:2',
    ];
}

【讨论】:

  • 这行得通。谢谢@Manjeet Barnala
  • 太棒了!! @Chirag,如果您验证社区的答案会很好。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-07-09
  • 1970-01-01
  • 2017-09-19
  • 1970-01-01
相关资源
最近更新 更多