首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Laravel 5控制器将JSON整数作为字符串发送

Laravel 5控制器将JSON整数作为字符串发送
EN

Stack Overflow用户
提问于 2015-07-21 05:58:34
回答 2查看 23K关注 0票数 36

在我的开发服务器上,来自Laravel 5控制器的JSON响应以正确的类型显示了数据。

e.g

imdb_rating: 7.6
imdb_votes: 6271

但在生产服务器上,JSON响应以字符串的形式传回。

imdb_rating: "7.60"
imdb_votes: "6271"

开发和生产都安装了相同版本的PHP (5.6.11-1)。

你知道是什么导致了这种行为吗?

EN

回答 2

Stack Overflow用户

发布于 2016-06-21 08:23:21

我刚刚遇到了同样的问题!对于那些正在寻找更合适的解决方案的人,您可能希望查看Eloquent模型的$casts属性。

接受的解决方案将起作用,但它也会转换您可能不想转换的字段。我建议将此添加到您的Eloquent模型中:

protected $casts = [ 'imdb_rating' => 'float', 'imdb_votes' => 'integer' ];

这将直接转换模型对象中的值,因此您不需要担心更新多个端点。我希望这对别人有帮助,就像对我一样!

票数 71
EN

Stack Overflow用户

发布于 2019-12-30 16:10:02

您可以使用如下类型转换返回整数

return (int)Post::find(1)->id;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31527050

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档