为了账号安全,请及时绑定邮箱和手机立即绑定

从移动应用程序检索PHP上的json数据

从移动应用程序检索PHP上的json数据

PHP
芜湖不芜 2021-05-11 13:34:12
我很难JSON从移动应用程序发送的发布请求中获取数据字段。在客户端(移动应用程序)上,JSON可以使用模型类轻松对数据进行编码。Future<http.Response> postRequest(CustomerData data) async {  var url = 'http://xxxxxxxxxxxx/testSendData.php';  var body = data.toJson();  var response = await http.post(url, headers: {"Content-Type": "application/json"}, body: body);  print("RESPONSE STATUS : ${response.statusCode}");  print("RESPONSE BODY : ${response.body}");  return response;}这部分工作良好,并生成JSON类似:{     "creation":"12/01/2019",   "status":"paid",   "price":0.0,   "items":[        {           "name":"Math books",         "amount":"2"      },      {           "name":"Skates adult",         "amount":"1"      },      {           "name":"Tools",         "amount":"8"      }   ]}PHP服务器端(testSendData.php)不能很好地运行,我唯一设法获得的就是JSON数据本身,但无法获得不同的字段:$jsonData = file_get_contents("php://input");我尝试使用json_decode分别获取字段而没有成功,我也尝试创建一个php CustomerData class解码JSON的方法,但仍然无法正常工作。获取JSON的各个字段的目的是将其中一些存储在数据库中任何帮助或参考教程将不胜感激。
查看完整描述

1 回答

?
郎朗坤

TA贡献1921条经验 获得超9个赞

我假设您将json数据放入此变量$ jsonData中


      <?php


        echo "jsondata=>".$jsonData='{  

         "creation":"12/01/2019",

         "status":"paid",

         "price":0.0,

         "items":[  

            {  

               "name":"Math books",

               "amount":"2"

            },

            {  

               "name":"Skates adult",

               "amount":"1"

            },

            {  

               "name":"Tools",

               "amount":"8"

            }

         ]

      }';


      $data1 = json_decode($jsonData, TRUE);

          echo "<pre>";

          print_r($data1);

          foreach ($data1 as $key => $value1) {


                if($key=='creation'){ 

                    echo $value1."<br>";

                }

                if($key=='status'){ 

                    echo $value1."<br>";

                }

                if($key=='price'){ 

                    echo $value1."<br>";

                }

                if($key=='items'){ 

                    foreach ($value1 as $key1 => $value_deta) {

                            print_r($value_deta);


                    }

                }


          }



查看完整回答
反对 回复 2021-05-28
  • 1 回答
  • 0 关注
  • 142 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信