Perl
Perl
Loading and Parsing a JSON Array
See more JSON Examples
A JSON array is JSON that begins with "[" and ends with "]". For example, this is a JSON array that contains 3 JSON objects.
[{"name":"jack"},{"name":"john"},{"name":"joe"}]
A JSON object, however, is JSON that begins with "{" and ends with "}". For example, this JSON is an object that contains an array.
{"pets":[{"name":"jack"},{"name":"john"},{"name":"joe"}]}
This example shows how loading a JSON array is different than loading a JSON object.
Chilkat Perl Downloads
use chilkat();
$strJsonArray = "[{\"name\":\"jack\"},{\"name\":\"john\"},{\"name\":\"joe\"}]";
$strJsonObject = "{\"pets\":[{\"name\":\"jack\"},{\"name\":\"john\"},{\"name\":\"joe\"}]}";
# A JSON array must be loaded using JsonArray:
$jsonArray = chilkat::CkJsonArray->new();
$jsonArray->Load($strJsonArray);
# Examine the values:
$i = 0;
while ($i < $jsonArray->get_Size()) {
# jsonObj is a JsonObject
$jsonObj = $jsonArray->ObjectAt($i);
print $i . ": " . $jsonObj->stringOf("name") . "\r\n";
$i = $i + 1;
}
# Output is:
# 0: jack
# 1: john
# 2: joe
# A JSON object must be loaded using JsonObject
$jsonObject = chilkat::CkJsonObject->new();
$jsonObject->Load($strJsonObject);
# Examine the values:
$i = 0;
$numPets = $jsonObject->SizeOfArray("pets");
while ($i < $numPets) {
$jsonObject->put_I($i);
print $i . ": " . $jsonObject->stringOf("pets[i].name") . "\r\n";
$i = $i + 1;
}
# Output is:
# 0: jack
# 1: john
# 2: joe