perl json

http://search.cpan.org/~makamaka/JSON-2.53/lib/JSON.pm#decode_json

use JSON;
$json_text = '{"x":1, "y":["a", "b"]}';
$perl_scalar = from_json( $json_text);
print $perl_scalar->{y}->[0];
$json_text   = to_json( $perl_scalar);
print "\n", $json_text;

另外如果字符串跟严格的json格式不匹配,比如key不是由双引号包围,则以上解析会报错,需要
使用 use JSON -support_by_pp; 声明
比如
$json_text = '{"x":1, "y":["a", "b"], z:123}';
以上代码就会出错
完整的解析如下
use JSON -support_by_pp;
$perl_scalar = from_json( $json_text, {allow_barekey=>1});

解析json时有许多高级设置选项,allow_xx, 比如
allow_barekey        允许json的key不包含引号
allow_singlequote 允许json的key包含单引号






 

你可能感兴趣的:(json,perl)