如何使用PHP在JSON文件数组的顶部追加新对象记录
实现方法:在JSON数组顶部追加记录
嘿,这事儿其实挺简单的,我给你分享几种常用场景下的实现方法,按需选择就行:
1. Node.js/JavaScript 场景
如果是在Node环境下处理本地JSON文件,或者前端直接操作内存中的数组,可以用下面的代码:
步骤说明:
- 读取并解析原有JSON数据为JavaScript数组
- 定义要追加的两条新记录
- 用扩展运算符(或
concat)把新记录放在数组头部,和原数组合并 - 将合并后的数组转回JSON字符串并保存(前端可直接使用,Node则写回文件)
// Node.js环境下需要引入fs模块,前端环境可跳过文件读写部分 const fs = require('fs'); // 1. 读取现有JSON文件并解析 const originalArray = JSON.parse(fs.readFileSync('your-data.json', 'utf8')); // 2. 准备要追加的两条记录 const newRecords = [ { id: '3', name: 'sssd dsyz', age: '10', address: 'somewhere', dob: '10/05/2010' }, { id: '2', name: 'Abc Xyz', age: '15', address: 'somewhere', dob: '10/05/2005' } ]; // 3. 合并数组:新记录在前,原数组在后 const updatedArray = [...newRecords, ...originalArray]; // 4. 写回文件(前端可直接使用updatedArray变量) fs.writeFileSync('your-data.json', JSON.stringify(updatedArray, null, 2));
2. Python 场景
如果是后端数据处理或者用Python脚本修改JSON文件,代码逻辑类似:
import json # 1. 读取并解析原有JSON文件 with open('your-data.json', 'r', encoding='utf-8') as f: original_array = json.load(f) # 2. 定义新记录 new_records = [ {"id": "3", "name": "sssd dsyz", "age": "10", "address": "somewhere", "dob": "10/05/2010"}, {"id": "2", "name": "Abc Xyz", "age": "15", "address": "somewhere", "dob": "10/05/2005"} ] # 3. 合并数组 updated_array = new_records + original_array # 4. 写回文件,indent参数让JSON格式更美观 with open('your-data.json', 'w', encoding='utf-8') as f: json.dump(updated_array, f, indent=2)
3. 手动修改(一次性操作)
如果只是临时修改文件,直接打开JSON编辑器(或文本编辑器),把两条新记录复制粘贴到原数组的最前方即可,注意保持JSON语法正确:
原结构:
[{ "id": "1", ... }]
修改后:[{ "id": "3", ... }, { "id": "2", ... }, { "id": "1", ... }]
⚠️ 注意:JSON要求键必须用双引号,不能用单引号,否则会解析失败哦!
内容的提问来源于stack exchange,提问作者Aezaz Desai
相关产品推荐
相关产品推荐

