【问题标题】:JSON:PP only encodes first item in arrayJSON:PP 仅编码数组中的第一项
【发布时间】:2011-11-28 17:29:32
【问题描述】:

我正在将我的值推送到数组中...

while ( ... ) {
  push @array, { label => "label", value => "value" };
}

这似乎有效。

那么……

use JSON::PP ;
print JSON::PP->new->utf8->encode(@array) ; 

只生成...

{"value":"value","label":"label"}

但我需要...

[{"value":"value","label":"label"}{"value":"value","label":"label"} etc.. ]

(输出数组中的每个项目,而不仅仅是第一个...)

有什么想法吗?

【问题讨论】:

    标签: json perl perl-module


    【解决方案1】:

    尝试传递对数组的引用:

    print JSON::PP->new->utf8->encode(\@array) ; 
    

    Encode 被记录为采用标量,而不是数组(因此您需要引用,它是一个标量)。

    【讨论】:

    • 完美运行。谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-02-13
    • 1970-01-01
    • 1970-01-01
    • 2020-12-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多