首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >json字符串的结构

问json字符串的结构
EN

Stack Overflow用户
提问于 2012-02-02 18:23:38
回答 2查看 154关注 0票数 0

预期的json字符串为:

代码语言:javascript
复制
{
    "nodes": [
        {
            "node": {
                "field1": "Book1", 
                "field2": "Book2", 
                "field3": "Book3"
            }
        }, 
        {
            "node": {
                "field1": "Book1", 
                "field2": "Book2", 
                "field3": "Book3"
            }
        }
    ]
}

这是我的代码:

代码语言:javascript
复制
<?php

//Mysql stuff.
mysql_connect('localhost', 'root', '');
mysql_select_db('dbname');

//create a query string to use
$query = "SELECT field1, field2, field3 FROM table";
$result = mysql_query($query);
$array = mysql_fetch_assoc($result);

$node['node']=$array;
$concat['node']=array($node);

echo json_encode($concat);

?>

它只返回数组的第一个元素。

因此,当我尝试使用while循环时,如下所示:

代码语言:javascript
复制
while( $row = mysql_fetch_assoc( $result ) ) {
    $json[] = $row;
}
echo json_encode( $json );

它的输出如下:

代码语言:javascript
复制
[
    {
        "field1": "Book1", 
        "field2": "Book2",
        "field3": "Book3"
    }, 
    {
        "field1": "Book1", 
        "field2": "Book2",
        "field3": "Book3"
    }
]

我是json结构的新手,如何获得期望的json字符串?有什么想法吗?

EN

回答 2

Stack Overflow用户

发布于 2012-02-02 18:32:40

代码语言:javascript
复制
$json['nodes'] = Array();

 ...

$json['nodes'][] = Array('node' => $row);
票数 1
EN

Stack Overflow用户

发布于 2012-02-02 18:43:39

代码语言:javascript
复制
<?php
$array = array
(
        'nodes' => array
        (
                array
                (
                        'node' => array
                        (
                                'field1' => 'Book1',
                                'field2' => 'Book2'
                        )
                ),
                array
                (
                        'node' => array
                        ( 
                                'field3' => 'Book3',
                                'field4' => 'Book4' 
                        )                       
                )

        )
);

echo json_encode($array);
?>

此php脚本输出所需的结构

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9110652

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档