Cassie Liu
Cassie Liu

Reputation: 195

How to access certain part of a JSON?

I'm trying to access the text "Passion" in the following code, but I can't figure out how. Right now I can only get

{"parts": [{"text": "Passion"]}

Can anyone tell me what to do next? Thanks!

$test = 
'{
    "event":
    {
        "response":"{\"parts\": [{\"text\": \"Passion\"]}"
    },
    "event_source":"server"
}';

$jarray = json_decode($test, true);
echo $jarray['event']['response'];

Upvotes: 1

Views: 63

Answers (1)

Death-is-the-real-truth
Death-is-the-real-truth

Reputation: 72289

you json data is invalid here:-

"{\"parts\": [{\"text\": \"Passion\"]}" 
//----------------------------------^ one } needed before ]

After correcting the input do like below:

<?php

$test = 
'{
    "event":
    {
        "response":"{\"parts\": [{\"text\": \"Passion\"}]}"
    },
    "event_source":"server"
}';

$jarray = json_decode($test, true);

print_r($jarray);

$response = json_decode($jarray['event']['response'], true);

echo $response['parts'][0]['text'];

Output:- https://3v4l.org/dmPDE

Upvotes: 2

Related Questions