duanchun6148 2016-09-13 07:03
浏览 303
已采纳

从PHP中提取JSON字符串中的信息

Following is the JSON output

{
  "bugs": [
{
  "is_confirmed": true,
  "cc": [

  ],
  "deadline": null,
  "qa_contact": "",
  "last_change_time": "2016-09-12T04:57:53Z",
  "creation_time": "2016-09-12T04:57:03Z",
  "keywords": [

  ],
  "classification": "Unclassified",
  "assigned_to": "ashish.sureka@in.abb.com",
  "priority": "Highest",
  "is_open": true,
  "creator": "ashish.sureka@in.abb.com",
  "target_milestone": "---",
  "creator_detail": {
    "name": "ashish.sureka@in.abb.com",
    "id": 1,
    "real_name": "Ashish Sureka",
    "email": "ashish.sureka@in.abb.com"
  },
  "is_cc_accessible": true,
  "op_sys": "Windows",
  "component": "TestComponent",
  "status": "CONFIRMED",
  "resolution": "",
  "platform": "PC",
  "depends_on": [

  ],
  "groups": [

  ],
  "summary": "Checking if Bugzilla REST API is working or not",
  "cc_detail": [

  ],
  "assigned_to_detail": {
    "name": "ashish.sureka@in.abb.com",
    "email": "ashish.sureka@in.abb.com",
    "id": 1,
    "real_name": "Ashish Sureka"
  },
  "alias": [

  ],
  "whiteboard": "",
  "version": "unspecified",
  "url": "",
  "see_also": [

  ],
  "id": 1,
  "dupe_of": null,
  "severity": "critical",
  "product": "TestProduct",
  "blocks": [

  ],
  "is_creator_accessible": true,
  "flags": [

  ]
}
],
 "faults": [

 ]
}

of my program

        // Location of the resource (Bug Report)
        $url = "http://localhost:8080/bugzilla/rest/bug/1";

        // Instantiate an instance of cURL
        $curl = curl_init();

        // cURL settings, URL to send request to
        curl_setopt($curl, CURLOPT_URL, $url);

        // cURL settings, Return the response as a string 
        curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);

        // Execute the cURL request
        $result = curl_exec($curl);

        // Close the cURL request
        curl_close($curl);

        //echo "<BR>Product: ". $result->product;
        //echo "<BR>Component: ".$result->component;
        //echo "<BR>Version: ".$result->version;
        //echo "<BR>Summary: ".$result->summary;
        //echo "<BR>Priority: ".$result->priority;
        //echo "<BR>Operating System".$result->op_sys;

I tried using json_encode and json_decode functions and tried to extract properties from object or get information from array but not able to get the product, component, version, summary, priority etc from the $result

  • 写回答

3条回答 默认 最新

  • dpnfxk251524 2016-09-13 07:10
    关注

    Try this

    $data = json_decode('your json_code',true);
    echo $data['bugs'][0]['component']."<br>";
    echo $data['bugs'][0]['product']."<br>";
    echo $data['bugs'][0]['version']."<br>";
    echo $data['bugs'][0]['summary']."<br>";
    

    Output

    TestComponent
    TestProduct
    unspecified
    Checking if Bugzilla REST API is working or not
    

    In json_decode When TRUE, returned objects will be converted into associative arrays.http://php.net/manual/en/function.json-decode.php

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 vue2(标签-chrome|关键词-浏览器兼容)
  • ¥15 python网络流自动生成系统 医学领域
  • ¥15 sql查询仓库里都有什么
  • ¥15 代码的修改,添加和运行完善
  • ¥15 krpano-场景分组和自定义地图分组
  • ¥15 lammps Gpu加速出错
  • ¥15 关于PLUS模型中kapaa值的问题
  • ¥15 关于博途V17进行仿真时无法建立连接问题
  • ¥15 机器学习教材中的例题询问
  • ¥15 求.net core 几款免费的pdf编辑器