在perl中创建json字符串

在perl中创建json字符串,json,perl,Json,Perl,我试图在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"; 但我不

我试图在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";
但我不确定我该如何处理额外的级别,您需要的是:

输出为:

{"d":{"success":false,"error":"key is required"}}

请注意,使用
JSON::false
表示
JSON
模块将正确转换为
false
作为JSON值的值。

哦,这很简单,我似乎一直在用错误的方法处理它。谢谢。@BluGeni-没问题。如果你还没有,我会考虑浏览<代码> Peldoc PelLeFF < /C> >(在上面的答案中链接)。Perl最令人沮丧的特性是,除非使用引用,否则数据结构会自动变平(这是一种类似于指针的指针,除了在解决嵌套数据结构和按引用传递的问题时没有用处之外)。@JackManey“…有点像指针,只是用它们射中自己的脚要困难得多。)为你解决了这个问题。@AaronMiller-LOL。很公平。
{"d":{"success":false,"error":"key is required"}}