Php Laravel-selectRaw(计数(*)是否作为字符串而不是整数返回?
我不知道这是怎么发生的。因为在我的Php Laravel-selectRaw(计数(*)是否作为字符串而不是整数返回?,php,mysql,laravel,highcharts,Php,Mysql,Laravel,Highcharts,我不知道这是怎么发生的。因为在我的localhost中,它工作正常,但在我的共享主机中之后,我注意到了它。我将转换为int的原因是因为highcharts 代码: public function assistance() { $programs = DB::table('assistances')->selectRaw('services.name, count(*) as y') ->join('services', 'assistances
localhost
中,它工作正常,但在我的共享主机中之后,我注意到了它。我将转换为int的原因是因为highcharts
代码:
public function assistance()
{
$programs = DB::table('assistances')->selectRaw('services.name, count(*) as y')
->join('services', 'assistances.service_id', '=', 'services.id')
->groupBy('service_id')->get();
return $programs;
}
JSON输出是这样的:
[
{
name: "BMAP",
y: "1"
}
]
它应该是y:1
,不带引号
少了什么?这是服务器问题吗?我从@Deep3015的评论中找到了一个使用JSON\u NUMERIC\u CHECK引用的答案 解决方案:json_encode()和json_decode()
我从@Deep3015的注释中找到了一个使用JSON\u NUMERIC\u CHECK引用的答案 解决方案:json_encode()和json_decode()
我正在使用MySql并成功地转换了查询中的结果。与json_解码和json_编码解决方案相比,它的气味稍微少一些
->selectRaw('services.name, CAST(count(*) AS UNSIGNED) as y')
我正在使用MySql并成功地转换了查询中的结果。与json_解码和json_编码解决方案相比,它的气味稍微少一些
->selectRaw('services.name, CAST(count(*) AS UNSIGNED) as y')
你的问题正确吗?选择后加入不会引起任何问题?@SagarGautam我猜是这样,因为在我的本地,它是100%工作的。这是localhost
[{“name”:“BMAP”,“y”:153},{“name”:“HOPE Scholar”,“y”:126},{“name”:“Logistics”,“y”:150},{“name”:“Youth”,“y”:126},{“name”:“Others”,“y”:125}]
在选择raw it may work之前放置您的join子句检查这将在后端将字符串转换为数字本身这是某些PHP版本中的已知错误。PHP5.3.3甚至添加了一个标志JSON\u NUMERIC\u CHECK
。生产和本地的PHP版本是什么?您的查询正确吗?选择后加入不会引起任何问题?@SagarGautam我猜是这样,因为在我的本地,它是100%工作的。这是localhost[{“name”:“BMAP”,“y”:153},{“name”:“HOPE Scholar”,“y”:126},{“name”:“Logistics”,“y”:150},{“name”:“Youth”,“y”:126},{“name”:“Others”,“y”:125}]
在选择raw it may work之前放置您的join子句检查这将在后端将字符串转换为数字本身这是某些PHP版本中的已知错误。PHP5.3.3甚至添加了一个标志JSON\u NUMERIC\u CHECK
。生产版和本地版的PHP版本是什么?toJson()
是否可用于$programs
?请参阅toJson()
是否可用于$programs
?看见