我似乎无法使用 JSON::XS
的OO接口(interface)正常。以下呱呱叫我无法追踪的错误:
use JSON::XS;
my $array = ['foo', 'bar'];
my $coder = JSON::XS->new->utf8->pretty;
print $coder->encode_json($array);
这与以下内容有关:
Usage: JSON::XS::encode_json(scalar) at test.pl line 5.
我一直在梳理JSON::XS
的代码而且我在任何地方都找不到“用法:”警告。我的用法似乎与文档中的示例非常匹配。谁能告诉我哪里出错了?
最佳答案
JSON::XS
有两个接口(interface):function 和 OO。
encode_json
. encode
,而不是 encode_json
. 以下两个片段都有效:
# Functional | # OO
------------------------------+-----------------------------------------
|
use JSON::XS; | use JSON::XS;
my $array = ['foo', 'bar']; | my $array = [ 'foo', 'bar' ];
|
print encode_json($array); | my $coder = JSON::XS->new->utf8->pretty;
| print $coder->encode($array);
|
# ["foo","bar"] | # [
| # "foo",
| # "bar"
| # ]
关于JSON::XS "Usage"呱呱,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14291605/