使用PHP构建JSON数据

时间:2014-06-23 11:51:18

标签: php json

我想使用PHP

生成以下JSON输出
{
"dataid": "An optional sourcetable identifier",
"columns": [
    {
        "colvalue": "Status",
        "coltext": "Status",
        "header": "Status",
        "sortbycol": "Status",
        "groupbyrank": null,
        "pivot": true,
        "result": false
    },
    {
        "colvalue": "Priority",
        "coltext": "Priority",
        "header": "Priority",
        "sortbycol": "Priority",
        "dataid": "An optional id.",
        "groupbyrank": 4,
        "pivot": false,
        "result": false
    },
    {
        "colvalue": "Team",
        "coltext": "Team",
        "header": "Team",
        "sortbycol": false,
        "dataid": "An optional id.",
        "groupbyrank": 1,
        "pivot": false,
        "result": false
    },
    {
        "colvalue": "Module",
        "coltext": "Module",
        "header": "Module",
        "sortbycol": "Module",
        "dataid": "An optional id.",
        "groupbyrank": 2,
        "pivot": false,
        "result": false
    },
    {
        "colvalue": "SLA",
        "coltext": "SLA",
        "header": "SLA",
        "sortbycol": "SLA",
        "dataid": "An optional id.",
        "groupbyrank": 3,
        "pivot": false,
        "result": false
    },
    {
        "colvalue": "Score",
        "coltext": "Score",
        "header": "Score",
        "sortbycol": "Score",
        "groupbyrank": null,
        "pivot": false,
        "result": true
    }
],
"rows": [
    {
        "Team": "Technical",
        "Module": "BASIS",
        "SLA": "Critical",
        "Priority": "High",
        "Status": "In Progress",
        "Score": "1",
        "Score2": "18.27"
    },
    {
        "Team": "Technical",
        "Module": "BASIS",
        "SLA": "Critical",
        "Priority": "High",
        "Status": "In Progress",
        "Score": "1",
        "Score2": "18.27"
    },
 **** MORE ENTRIES ARE ITERATED BASED ON SQL ROW ***
]

}

但是我仍然坚持如何组合我的硬编码数组和动态数据(取自MySQL行)。

以下是我的PHP代码,用于生成静态的 dataid

$test = array(
        "dataid" => 'An optional sourcetable identifier',
        "columns" => array(
            array(
                'colvalue' => 'Status',
                'coltext' =>'Status',
                'header' =>'Status',
                'sortbycol' => 'Status',
                'groupbyrank' => null,
                'pivot' => true,
                'result' => false
            ),
            array(
                'colvalue' => 'Priority',
                'coltext' => 'Priority',
                'header' => 'Priority',
                'sortbycol' => 'Priority',
                'dataid' => 'An optional id.',
                'groupbyrank' => 4,
                'pivot' => false,
                'result' => false
            ),
        )
    );

我坚持的是如何将它与我的行数据结合起来?有人可以帮我这个。

由于

1 个答案:

答案 0 :(得分:1)

您只需使用新密钥即可修改现有数组:

$test['rows'] = $yourRowDataAsArray;