Perl
Chilkat2 Perl
JSON: Nested Array
See more JSON Examples
Here we have a JSON object that contains nested arrays. This example demonstrates how to access the contents of the nested arrays.
{
"numbers" : [
["even", 2, 4, 6, 8],
["prime", 2, 3, 5, 7, 11, 13]
] }
Chilkat Perl Downloads
use strict;
use warnings;
use Chilkat2;
my $json = Chilkat2::JsonObject->new;
# This is the above JSON with whitespace chars removed (SPACE, TAB, CR, and LF chars).
# The presence of whitespace chars for pretty-printing makes no difference to the Load
# method.
my $jsonStr = '{ "numbers" : [ ["even", 2, 4, 6, 8], ["prime", 2, 3, 5, 7, 11, 13] ] }';
my $success = $json->Load($jsonStr);
if (!$success) {
print $json->LastErrorText, "\n";
exit;
}
# Get the value of the "numbers" object, which is an array that contains JSON arrays.
my $outerArray = $json->ArrayOf('numbers');
if (!$json->LastMethodSuccess) {
print "numbers array not found.\n";
exit;
}
my $numArrays = $outerArray->Size;
for my $i (0 .. $numArrays - 1) {
my $innerArray = $outerArray->ArrayAt($i);
# The first item in the innerArray is a string
print $innerArray->StringAt(0), ":\n";
my $numInnerItems = $innerArray->Size;
for my $j (1 .. $numInnerItems - 1) {
print ' ', $innerArray->IntAt($j), "\n";
}
}