首页 > 解决方案 > json响应将int转换为字符串问题laravel

问题描述

我使用以下命令在 Laravel 中输出:

response()->json($data, $status, [])->send();

它一直在将数据库中以数字方式定义的所有数字转换为字符串使用以下值解决了这个问题,但是这个解决方案将所有数字转换为数字类型

response()->json($data, $status, [], JSON_NUMERIC_CHECK)->send();

而且我不希望这种情况发生,因为数据库中有来自字符串的数字并且应该保留字符串。

应该怎么做才能在输出中显示其类型的所有值?

标签: phpjsonlaravelapijsonencoder

解决方案


是的,正如 Jairo Nava 所说;

在你的模型中

  protected $casts = [
    'your_int_field' => 'integer',
  ];

使用正确的 INT sql 字段。


推荐阅读