php追加和修改文件中的json数据

php修改json数据的方法:首先从文件中读取数据到PHP变量;然后把JSON字符串转成PHP数组;最后通过“file_put_contents("text.json",$json_strings);”方法修改json数据即可。

// 追加写入用户名下文件
$code="001";//动态数据
        $json_string = file_get_contents("text.json");// 从文件中读取数据到PHP变量
        $data = json_decode($json_string,true);// 把JSON字符串转成PHP数组
        $data[$code]=array("a"=>"as","b"=>"bs","c"=>"cs");
        $json_strings = json_encode($data);
        file_put_contents("text.json",$json_strings);//写入
//修改
  $json_string = file_get_contents("text.json");// 从文件中读取数据到PHP变量
        $data = json_decode($json_string,true);// 把JSON字符串转成PHP数组
        $data["001"]["a"]="aas";
        $json_strings = json_encode($data);
        file_put_contents("text.json",$json_strings);//写入

 

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
如果要追加 JSON 数据到一个文件,可以先读取文件原有的 JSON 数据,将新的数据追加到这个 JSON 数据,然后再将整个 JSON 数据重新写入文件。以下是一个示例: ```cpp QString filename = "data.json"; QFile file(filename); if (file.open(QIODevice::ReadOnly | QIODevice::Text)) { // 读取原有的 JSON 数据 QByteArray jsonData = file.readAll(); file.close(); // 将新的数据追加到原有的 JSON 数据 QJsonDocument doc = QJsonDocument::fromJson(jsonData); QJsonObject obj = doc.object(); obj["name"] = "new name"; obj["age"] = 20; doc.setObject(obj); jsonData = doc.toJson(); // 将整个 JSON 数据重新写入文件 if (file.open(QIODevice::WriteOnly | QIODevice::Truncate | QIODevice::Text)) { QTextStream out(&file); out << jsonData; file.close(); } } ``` 如果要删除 JSON 数据的某个属性,可以先读取文件原有的 JSON 数据,将要删除的属性从 JSON 数据移除,然后再将整个 JSON 数据重新写入文件。以下是一个示例: ```cpp QString filename = "data.json"; QFile file(filename); if (file.open(QIODevice::ReadOnly | QIODevice::Text)) { // 读取原有的 JSON 数据 QByteArray jsonData = file.readAll(); file.close(); // 将要删除的属性从 JSON 数据移除 QJsonDocument doc = QJsonDocument::fromJson(jsonData); QJsonObject obj = doc.object(); obj.remove("name"); doc.setObject(obj); jsonData = doc.toJson(); // 将整个 JSON 数据重新写入文件 if (file.open(QIODevice::WriteOnly | QIODevice::Truncate | QIODevice::Text)) { QTextStream out(&file); out << jsonData; file.close(); } } ``` 这里假设要追加的新数据是一个包含 name 和 age 两个属性的 JSON 对象。要删除的属性是 name。在实际使用,需要根据具体的需求进行修改

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值