我正在尝试以json格式打印我得到的信息,我想如果我展示出我所拥有的信息会更好地解释一切。
foreach ...{
printer($versions);
}
sub printer
{
foreach ...{
my $results = id_cards();
my $toJsonResult = JSON::to_json($results);
print $toJsonResult;
}
}
sub id_cards
{
my $returnData = [];
for($x=1;$y < $vehicle->{'ROWS'};$x++ )
{
my $data;
$data->{year} = $vehicle->{$x}->{'YEAR'}; #there is more $data->repetativeness but not important to get the point
push(@$returnData,$data);
$y++
}
return $returnData;
}
打印的json:
[{"year":"2004"},{"year":"2004"}][{"year":"2002"},{"year":"2000"},{"year":"1994"}][{"year":"2004"},{"year":"1955"}][{"year":"2004"},{"year":"1955"}]
这非常接近我想要的东西,但是json“对象”没有分离吗?(不确定该术语是什么),但它使其无效json。我该怎么做,以将相应的年份分组,但放入有效的json中。
您已经在id_cards
子目录中有了正确的主意:
sub some_function {
my $return_array = [];
foreach (...) {
push(@$return_array, $some_result);
}
return $return_array;
}
在中做同样的事情printer
:
sub printer {
my $return_array = [];
# for ...
return $return_array;
}
然后在foreach
文件顶部的最外层执行相同的操作:
my $results = [];
foreach (...) {
push(@$results,printer($versions));
}
print JSON.to_json($results);
在最后一分钟仅打印一次。JSON需要一个完整的数据结构。如果您没有提供所有内容,那么您将无法期望它知道如何正确格式化。
当然,在这一点上,该功能printer
不会打印任何内容。因此它被误命名。我将其名称更改为card_collection
。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句