【发布时间】:2019-04-01 02:52:14
【问题描述】:
我无法让这个 Perl 代码为表中的整数返回真正的整数值。 MySQL 表列已正确指定为整数,但此处的 JSON 输出将所有查询值括在引号中。如何正确保留指定的数据类型(尤其是整数和布尔值)?
use strict;
use warnings;
use DBI;
use JSON;
my $sth = "SELECT id, name, age FROM table";
my $data = $dbh->selectall_arrayref($sth, {Slice => {}});
my $response = encode_json($data);
print $response;
## outputs: {"id":"1","name":"Joe Blodge","age":"42"}
我在这里做错了什么?我怎样才能让它输出格式正确的 JSON:
{"id":1,"name":"Joe Blodge","age":42}
【问题讨论】:
-
阅读
JSON文档中关于 PERL -> JSON 的部分。使用Cpanel::JSON::XS也可能会产生更好的结果。
标签: mysql json perl dbi hashref