JSON增量不起作用

I am working on a JSON file in which I want to increment instead of overwriting the data. However I cannot seem to do this (since it keeps on overwriting instead of adding data with an incremented ID).

The code underneath is: database_json.php (as u can see I include it in saveJson.php)

$databaseFile = file_get_contents('json_files/database.json');
$databaseJson = json_decode($databaseFile, true);
$database = $databaseJson['data'];

the below is the code of the file saveJson.php contains the following code:

// below starts a new page, the page that submits the form called saveJson.php
include_once('database_json.php');
  $data = $_POST;
  //Setup an empty array.
   $errors = array();
if (isset($data)) {
$newExerciseData = $data;
$exerciseArray = $data['main_object'];
$databaseFile = 'json_files/database.json';
$textContent = file_get_contents($databaseFile);
$database = json_decode($textContent, true);
if ($data['id'] === 'new') {
    if (count($database['data']) == 0) {
        $ID = 0;
    }
    else {
$maxID = max($database['data']);
        $ID = ++$maxID["id"];
    }
    $newJsonFile = 'jsonData_' . $ID . '.json';
    $newJsonFilePath = 'json_files/' . $newJsonFile;
    //Create new database exercise_txt
    $newArrayData = array(
        'id' => $ID,
         // a lot of variables that aren't related to the problem
    );
 $database['data'][] = $newArrayData;
    file_put_contents($databaseFile, json_encode($database, JSON_UNESCAPED_UNICODE, JSON_PRETTY_PRINT));
    file_put_contents($newJsonFilePath, json_encode($newExerciseData, JSON_UNESCAPED_UNICODE, JSON_PRETTY_PRINT));
}
else {
    $index = array_search((int) $_POST['id'], array_column($database['data'], 'id'));
    $correctJsonFile = 'json_files/jsonData_' . $_POST['id'] . '.json';
    $newJsonFile = 'jsonData_' . $_POST['id'] . '.json';
    $newJsonFilePath = 'json_files/' . $newJsonFile;
    //Create new database exercise_txt
    $newArrayData2 = array(
        'id' => (int) $_POST['id'],
         // more not related to problem variables
    );
 $database['data'][$index] = $newArrayData2;
    file_put_contents($databaseFile, json_encode($database, JSON_UNESCAPED_UNICODE));
    file_put_contents($newJsonFilePath, json_encode($newExerciseData, JSON_UNESCAPED_UNICODE));
}
 echo json_encode($newExerciseData, JSON_UNESCAPED_UNICODE);
}

so, what I wish for: To increment the IDs and NOT to overwrite the data. I already did some research and didn't find any useful information besides this --> Auto increment id JSON, but to me it looks like I have the same principle applied.