Php 使用json文件中的数据更新mysql表

Php 使用json文件中的数据更新mysql表,php,json,parsing,Php,Json,Parsing,我完全不熟悉json,而且在工作中遇到了麻烦 我在mysql表的id字段中存储了一个id列表 例如,id字段包含这些值 100001 100002 100003 json文件包含这些id的属性,如下所示 {"100001":{"person":{"name":"John","age":"32,"address":"123 street"}}, {"100002":{"person":{"name":"jenny","age":"22,"address":"100 street"}}, {"100

我完全不熟悉json,而且在工作中遇到了麻烦

我在mysql表的id字段中存储了一个id列表

例如,id字段包含这些值

  • 100001
  • 100002
  • 100003
  • json文件包含这些id的属性,如下所示

    {"100001":{"person":{"name":"John","age":"32,"address":"123 street"}},
    {"100002":{"person":{"name":"jenny","age":"22,"address":"100 street"}},
    {"100003":{"person":{"name":"james","age":"25,"address":"200 street"}}
    
    我的目的是在where子句中使用id作为条件,使用json文件中的数据更新mysql表中的name、age和address字段

    但我甚至不知道从哪里开始

    如果有人知道他们在做什么,请告诉我


    提前感谢。

    你在努力理解什么?json_decode()


    这将为您提供一个数组,您可以通过foreach创建单独的update语句,构建一个大型update语句并执行它。

    您应该会在某个地方出错;您的花括号不匹配,并且您在年龄之后缺少结束引号:

    {"100001":{"person":{"name":"John","age":"32,"address":"123 street"}},
    
    应该是

    {"100001":{"person":{"name":"John","age":"32","address":"123 street"}}},
    
    您缺少实际ID的右大括号。为便于阅读,请尝试以下格式:

    {
     "100001":{
               "person":{
                         "name":"John",
                         "age":"32",
                         "address":"123 street"
                         }
               }
     },
    

    您好,谢谢您的快速回复。我理解json解码。我只是无法将其应用于这个特定的数据结构。我也不知道如何将它与update语句结合起来。我试过你的建议,我只是得到一个空白屏幕,没有错误或任何东西。谢谢你的艾美奖。应该看过《时代》的引用。但是,我使用的json文件并没有为每个条目设置一个结束括号。相反,它有一个逗号分隔每个条目。结束大括号仅出现在最后一个条目上,以指示文件的结尾。那么,每个ID号前不应该有一个开始大括号,第一个ID号前应该只有一个开始大括号。不能有不匹配的大括号。
    {
     "100001":{
               "person":{
                         "name":"John",
                         "age":"32",
                         "address":"123 street"
                         }
               }
     },