我正在尝试在perl中创建一个json字符串,输出如下内容:
{"d":{"success":false, "error":"key is required"}}
我已经想出如何在没有“d”的情况下使用此示例:
my %rec_hash = ('a' => 1, 'b' => 2, 'c' => 3, 'd' => 4, 'e' => 5);
my $json = encode_json \%rec_hash;
print "$json\n";
但不确定我想用额外的等级做什么
答案 0 :(得分:18)
您需要的是hash reference:
use strict;
use warnings;
use JSON;
my $json = JSON->new;
my $data_to_json = {d=>{success=>JSON::false,error=>"key is required"}};
print $json->encode($data_to_json) . "\n";
输出结果为:
{"d":{"success":false,"error":"key is required"}}
请注意,使用JSON::false
表示JSON
模块将作为JSON值正确转换为false
的值。