0

我知道标题似乎有点令人困惑,但可以说我有这个:

{"success":true,"name":"test","ips":[{"public":"ipaddr","local":"ipaddr"},{"public":"ipaddr","local":"ipaddr"}],"time":1040}

由于有两个“公共”IP 地址,我只想显示列表中的第一个公共 IP。我该怎么做呢?

这是我到目前为止所拥有的:

$json = json_decode($contents, true);
foreach($json['ips'] as $item) {
    echo $item['public'];
}
4

2 回答 2

1

让我们可视化您的 json 数据的结构,然后在下面的示例中查看我们如何访问特定元素(第一个 ips):

$json = <<<JSON
{
  "success": true,
  "name": "test",
  "ips": [
    {
      "public": "ipaddr",
      "local": "ipaddr"
    },
    {
      "public": "ipaddr",
      "local": "ipaddr"
    }
  ],
  "time": 1040
}
JSON;

$decoded = json_decode($json);

var_dump($decoded);
var_dump($decoded->ips[0]->public);
于 2013-04-07T21:56:07.797 回答
0

尝试

$json = json_decode($contents, true);
echo $json['ips'][0]['public'];

例子

于 2013-04-07T21:51:59.403 回答