PHP Json Parser

时间:2014-02-18 11:47:20

标签: php json

我是PHP编程新手, 我需要解析json字符串。 这是我作为JSON数组

的字符串
 [{"datetime":"17/02/2014 13:18:30","type":"testtype","locationid":"1","GPSType":"GOOGLE","GPSLatitude":"1.1","GPSLongtitude":"1.2","userid":"admin","brand":"1234567","numbers":["num1","num2","num3]}]

在上面的字符串中,我只需要解析数字数组。

2 个答案:

答案 0 :(得分:0)

我希望你的PHP代码中有JSON字符串。 您的JSON字符串中存在错误。 由于您将JSON字符串维护为数组,因此您可以遵循此方法。 你可以很容易地理解这一点。

<?php
    $json = '[
                {
                    "datetime": "17/02/2014 13:18:30",
                    "type": "testtype",
                    "locationid": "1",
                    "GPSType": "GOOGLE",
                    "GPSLatitude": "1.1",
                    "GPSLongtitude": "1.2",
                    "userid": "admin",
                    "brand": "1234567",
                    "numbers": ["num1", "num2", "num3"]
                }
            ]';

    $obj = json_decode($json);
    $len = count($obj[0]->{'numbers'});
    for($i = 0; $i < $len; $i++) {
        echo $obj[0]->{'numbers'}[$i].'<br>';
    }
    ?>

输出将是:

  

num1
  num2
  num3

答案 1 :(得分:-1)

正如其他人在评论中提到的那样,使用json_decode

http://www.php.net/manual/en/function.json-decode.php

[编辑]

为了只获取"numbers"数组,只需尝试:

$json = json_decode($input, true);
$numbers = $json[0]["numbers"];

json_decode函数会将您的JSON字符串转换为关联数组,您可以从中获取所需的索引。