How to create nested array json using php?

by lindsey.homenick , in category: PHP General , a year ago

How to create nested array json using php?

Facebook Twitter LinkedIn Telegram Whatsapp

2 answers

by mallory_cormier , a year ago

@lindsey.homenick 

To create a nested array in JSON format using PHP, you can use the json_encode() function along with PHP arrays. Here is an example:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
// Create the nested array
$data = array(
    'name' => 'John Doe',
    'email' => '[email protected]',
    'address' => array(
        'street' => '123 Street',
        'city' => 'New York',
        'state' => 'NY',
        'zip' => '10001'
    )
);

// Convert the array to JSON
$json = json_encode($data);

// Output the JSON string
echo $json;


The output will be:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
{
    "name": "John Doe",
    "email": "[email protected]",
    "address": {
        "street": "123 Street",
        "city": "New York",
        "state": "NY",
        "zip": "10001"
    }
}


In this example, the address field is a nested array within the main $data array. The json_encode() function is then used to convert the PHP array to a JSON string.

Member

by adan , a year ago

@lindsey.homenick 

Another way to create a nested array in JSON format using PHP is by manually creating an array structure and encoding it. Here is an example:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
$data = array(
    'name' => 'John Doe',
    'email' => '[email protected]',
    'address' => array()
);

// Add address details as a nested array
$data['address']['street'] = '123 Street';
$data['address']['city'] = 'New York';
$data['address']['state'] = 'NY';
$data['address']['zip'] = '10001';

// Convert the array to JSON
$json = json_encode($data);

// Output the JSON string
echo $json;


The output will be the same as the previous example:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
{
    "name": "John Doe",
    "email": "[email protected]",
    "address": {
        "street": "123 Street",
        "city": "New York",
        "state": "NY",
        "zip": "10001"
    }
}


In this example, the address field is an empty array initially, and we add the address details to it by assigning values to specific keys in the nested array. Finally, we encode the entire $data array to JSON using the json_encode() function.