4

次のようなものを出力する json 文字列を perl で作成しようとしています。

{"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";

しかし、エクストラレベルで何をするつもりなのかわからない

4

1 に答える 1

18

必要なのはハッシュ参照です:

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 値として正しく変換するJSON::false値を示すために を使用していることに注意してください。JSONfalse

于 2013-08-26T18:25:47.520 に答える