PHP进程JSON数组

时间:2013-08-06 21:39:26

标签: php json arrays

如何处理此JSONArray? 我通过Android应用程序的POST收到它。

"[
    "Itemz",
    {
        "id": "1",
        "idviz": "3",
        "pux": "100.00",
        "umx": "PCS",
        "cantx": "3",
        "name": "Item 1 name"
    },
    "Itemz",
    {
        "id": "3",
        "idviz": "3",
        "pux": "230.00",
        "umx": "PCS",
        "cantx": "2",
        "name": "Item 2 name"
    },
    "Itemz",
    {
        "id": "7",
        "idviz": "3",
        "pux": "87.23",
        "umx": "LTR",
        "cantx": "6",
        "name": "Item 3 name"
    }
]"

如何访问此JSON数组中的项目? 我需要将它拆开,以便我可以构建mysql插入语句。你可以假设每个"项目"是必须插入表格的项目。

谢谢

2 个答案:

答案 0 :(得分:2)

json_decode  将json字符串解析为数组

答案 1 :(得分:0)

在json的yones开头和结尾有一个额外的引用,在OPs json的开头和结尾都有一个额外的双引号。由于json使用双引号,因此需要将整个json字符串封装在单引号中。试试这个:

$json = '[
    "Itemz",
    {
        "id": "1",
        "idviz": "3",
        "pux": "100.00",
        "umx": "PCS",
        "cantx": "3",
        "name": "Item 1 name"
    },
    "Itemz",
    {
        "id": "3",
        "idviz": "3",
        "pux": "230.00",
        "umx": "PCS",
        "cantx": "2",
        "name": "Item 2 name"
    },
    "Itemz",
    {
        "id": "7",
        "idviz": "3",
        "pux": "87.23",
        "umx": "LTR",
        "cantx": "6",
        "name": "Item 3 name"
    }
]';

echo '<pre>';
print_r(json_decode($json));
echo '</pre>';