给定JSON输出的PHP表示

时间:2014-11-16 09:01:07

标签: php arrays json

在进行一些混合和匹配后,我有以下JSON输出:

{
    "tutor": 
    [
        {
            "tid": "1",
            "fname": "John",
            "lname": "Doe"
        },
        {
            "tid": "2",
            "fname": "Linda",
            "lname": "Jane"
        }
    ]
}

我目前有这个PHP代码 - 但它并没有完全创建所需的输出 - 我需要更改什么以匹配上面的JSON?

    $test = array();
    $column = array();

    if($count > 0)
    {
        while($row = $stmt->fetch(PDO::FETCH_ASSOC)) 
        {
            $test[] =  array( 
                $column[] = array(
                            'tid'       => $row['TID'],
                            'fname'     => $row['FNAME'],
                            'lname'     => $row['LNAME']
                            );
                        );
        }
    }

1 个答案:

答案 0 :(得分:0)

不需要其他嵌套,只需将它们推入容器内并对其进行编码:

$column = array();

if($count > 0) {
    while($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
        $column[] = array(
            'tid'       => $row['TID'],
            'fname'     => $row['FNAME'],
            'lname'     => $row['LNAME']
        );            
    }
}

echo json_encode(array('tutor' => $column));
// echo json_encode(array('tutor' => $column), JSON_PRETTY_PRINT); // for PHP 5.4