在PHP JSON响应中将整数呈现为浮点数

在PHP JSON响应中将整数呈现为浮点数,php,laravel,web-services,lumen,Php,Laravel,Web Services,Lumen,我在PHP webservice Lumen中传递JSON响应,如下所示 $obj = ['test' => 0.0 ]; return $res = json_encode($obj); 但它的响应被转换为整数。见下文 {"test":0} 我希望它是浮点数0.0,而不是响应中的字符串。0.0、1.0等值都是整数,在这种情况下没有问题 但如果您坚持保留变量的类型,您可以这样做: json_encode($obj, JSON_PRESERVE_ZERO_FRACTION); 将其设置

我在PHP webservice Lumen中传递JSON响应,如下所示

$obj = ['test' => 0.0 ];
return $res = json_encode($obj);
但它的响应被转换为整数。见下文

{"test":0}

我希望它是浮点数0.0,而不是响应中的字符串。

0.0、1.0等值都是整数,在这种情况下没有问题

但如果您坚持保留变量的类型,您可以这样做:

json_encode($obj, JSON_PRESERVE_ZERO_FRACTION);

将其设置为json之前的字符串,PHP不喜欢以零作为小数的浮点。已尝试过,但响应为{test:0.0}。我希望它是{test:0.0}我不认为{test:0.0}是一个有效的json。因此,使用该服务的设备希望得到这种格式的响应。是的,在json中有效,但在PHP中无效。