在PHP中打印JSON内容

时间:2018-10-03 15:53:04

标签: php json

我想打印此json 我可以用动作

打印第一部分

PHP:

$print= json_decode($output_data);

foreach($print->actions as $mydata)
{
    echo $mydata->ID.'<br><br>';
}

JSON:

{
  "actions": [
    {
      "ID":"Search",
      "name":"Select"
    }
  ],
  "content": {
    "TEST": "false",
    "nickname": "brad"
  }
}

但是我不能打印内容部分以显示测试和昵称内容。

你能帮我吗?

谢谢

3 个答案:

答案 0 :(得分:0)

假设您的Json格式如下:

{
  "actions" : [{
      "ID" : "Search",
      "name" : "Select"
    }
  ],
  "content" : {
    "TEST" : "false",
    "nickmane" : "brad"
  }
}

您可以像下一个示例一样进行操作:

$print= json_decode($output_data);

// Print all actions IDs:

foreach($print->actions as $mydata)
{
    echo $mydata->ID . '<br><br>';
}

// Print TEST.

echo "TEST: " . $print->content->TEST . " Nickname: " . $print->content->nickname;

此外,如果您需要转储所有JSON,请尝试以下操作:

$print = json_decode($output_data);
print_r($print);

或者这个:

$print = json_decode($output_data);
$output = print_r($print, true);
echo $output;

您可以在此处详细了解有关print_r()和其他转储变量的方法:http://php.net/manual/es/function.print-r.php

答案 1 :(得分:0)

您可以像这样简单地做到这一点:

$print= json_decode($output_data);
echo $print->content->TEST;
echo "<br/>";
echo $print->content->nickmane;

与“动作”的区别在于“动作”是一个数组,而“内容”是一个对象,因此您不需要循环。

Click here to run a demo of this code

答案 2 :(得分:-2)

您的JSON格式无效。我似乎您的JSON应该是以下内容才能执行您想要的操作:

{
  "actions" : [{
      "ID" : "Search",
      "name" : "Select"
    }
  ],
  "content" : {
    "TEST" : "false",
    "nickmane" : "brad"
  }
}