Sample code for 30+ languages & platforms
PHP Requires Chilkat v11.0.0+

Swap JSON Objects

See more JSON Examples

Demonstrates how to swap two JSON objects within a JSON document.

Chilkat PHP Downloads

Chilkat2 PHP
<?php

use Chilkat2\JsonObject;

$json = new JsonObject();
$json->EmitCompact = false;

// Load the following JSON:

// {
//   "petter": {
//     "DOB": "26/02/1986",
//     "gender": "male",
//     "country": "US"
//   },
//   "Sara": {
//     "DOB": "13/05/1982",
//     "gender": "female",
//     "country": "FR"
//   },
//   "Jon": {
//     "DOB": "19/03/1984",
//     "gender": "male",
//     "country": "UK"
//   }
// }

try {
    $json->LoadFile('qa_data/json/people.json');
} catch (\Chilkat2\Exception $e) {
    echo $e->getMessage(), "\n";
    exit;
}

// Swap the positions of Jon and Sara.
$index1 = $json->IndexOf('Jon');
$index2 = $json->IndexOf('Sara');
$json->Swap($index1, $index2);

// We have this now:
echo $json->Emit(), "\n";

// {
//   "petter": {
//     "DOB": "26/02/1986",
//     "gender": "male",
//     "country": "US"
//   },
//   "Jon": {
//     "DOB": "19/03/1984",
//     "gender": "male",
//     "country": "UK"
//   },
//   "Sara": {
//     "DOB": "13/05/1982",
//     "gender": "female",
//     "country": "FR"
//   }
// }

// To swap an inner member:

$jsonSara = new JsonObject();
$json->ObjectOf2('Sara', $jsonSara);

$index1 = $jsonSara->IndexOf('DOB');
$index2 = $jsonSara->IndexOf('country');
$jsonSara->Swap($index1, $index2);

// We now have this:
echo $json->Emit(), "\n";

// {
//   "petter": {
//     "DOB": "26/02/1986",
//     "gender": "male",
//     "country": "US"
//   },
//   "Jon": {
//     "DOB": "19/03/1984",
//     "gender": "male",
//     "country": "UK"
//   },
//   "Sara": {
//     "country": "FR",
//     "gender": "female",
//     "DOB": "13/05/1982"
//   }
// }