从Key Value JSON对象获取数据

时间:2018-03-07 13:50:00

标签: php json

我下面有一个JSON对象,但是我很难从中得到名字和价值。

我想获取值并将它们保存到数据库中。

$json = '
{
  "Body":
  {
    "stkCallback":
    {
      "ResultCode":0,
      "ResultDesc":"The service request is processed successfully.",
      "CallbackMetadata":
      {
        "Item":
        [
          {
            "Name":"Amount",
            "Value":10
          },
          {
            "Name":"TransactionDate",
            "Value":20170727154800
          },
          {
            "Name":"PhoneNumber",
            "Value":26721566839
          }
        ]
      }
    }
  }
}';

我如何获得"名称":"金额"值和"名称":" TransactionDate"值。

至少其余的

$ResultCode = json_decode($json)->Body->stkCallback->ResultCode;
$ResultDesc = json_decode($json)->Body->stkCallback->ResultDesc;

问题是,当某些人有价值而其他人不知道时,如何在循环中获取这些值?

1 个答案:

答案 0 :(得分:1)

试试这个:

$response=json_decode($json,true);

echo $amount=$response['Body']['stkCallback']['CallbackMetadata']['Item']['0']['Value'];
echo $TransactionDate=$response['Body']['stkCallback']['CallbackMetadata']['Item']['1']['Value'];
echo $PhoneNumber=$response['Body']['stkCallback']['CallbackMetadata']['Item']['2']['Value'];

您现在拥有变量中的所有值。