Sample code for 30+ languages & platforms
Perl

JSON: Access Array Values

See more JSON Examples

Demonstrates how to access values in a JSON array.

Chilkat Perl Downloads

Perl
use chilkat();

$success = 0;

$json = chilkat::CkJsonObject->new();

$jsonStr = "{ \"id\": 1, \"name\": \"A green door\", \"tags\": [\"home\", 22, \"green\"], \"price\": 125 }";

$success = $json->Load($jsonStr);
if ($success != 1) {
    print $json->lastErrorText() . "\r\n";
    exit;
}

# Get the "tags" array, which contains "home", 22, "green"
# tagsArray is a JsonArray
$tagsArray = $json->ArrayOf("tags");
if ($json->get_LastMethodSuccess() == 0) {
    print "tags member not found." . "\r\n";
    exit;
}

# Get the value at each array index. 
# Output will be:
# [0] = home
# [0] as integer = 0
# [1] = 22
# [1] as integer = 22
# [2] = green
# [2] as integer = 0

$arraySize = $tagsArray->get_Size();

for ($i = 0; $i <= $arraySize - 1; $i++) {

    $sValue = $tagsArray->stringAt($i);

    print "[" . $i . "] = " . $sValue . "\r\n";

    $iValue = $tagsArray->IntAt($i);
    print "[" . $i . "] as integer = " . $iValue . "\r\n";

}

# Note: The StringAt method returns the value as a string regardless of the type.

# The IntAt method returns the value as an integer.  If the value does not convert to 
# an integer, then 0 is returned