To create and append data to a JSON file using PHP, the following steps are required:
- Define the JSON file path: Specify the name and location of the JSON file.
Code
$filename = 'data.json';
- Prepare the new data: Create an associative array in PHP representing the data to be appended.
Code
$newData = [
'name' => 'Aditya Singh',
'age' => 43,
'city' => 'India'
];
- Read existing data (if any): Check if the JSON file exists. If it does, read its contents and decode them into a PHP array.
Code
if (file_exists($filename)) {
$currentData = file_get_contents($filename);
$arrayData = json_decode($currentData, true); // true for associative array
} else {
$arrayData = []; // Initialize an empty array if file doesn't exist
}
- Append new data: Add the
$newData
to the$arrayData
. If the JSON file stores an array of objects, append the new data as a new element in that array.
Code
$arrayData[] = $newData;
- Encode and write to file: Convert the updated PHP array back into a JSON string using
json_encode()
and write it to the file usingfile_put_contents()
.
Code
$jsonData = json_encode($arrayData, JSON_PRETTY_PRINT); // JSON_PRETTY_PRINT for readability
file_put_contents($filename, $jsonData);
This process ensures that new data is added without overwriting existing content, while also handling the creation of the file if it doesn’t already exist.