首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >多个JSON根元素\ JSON编码

多个JSON根元素\ JSON编码
EN

Stack Overflow用户
提问于 2016-01-05 15:18:18
回答 2查看 3K关注 0票数 0

我正在创建一个数组,其中包含了几个参数,包含在一个for循环中,如下所示:

代码语言:javascript
运行
复制
for ($x = 1; $x <= 2; $x++) {

        $jsonarray=array(

        'id' => $x, 
        'title' => $title,
        'url' => $url,

    );

        echo json_encode($jsonarray, JSON_UNESCAPED_SLASHES);

    }

上面的代码将创建5个数组并将它们编码为JSON,如下所示:

代码语言:javascript
运行
复制
{  
   "id":1,
   "title":"Test Title",
   "url":"http://test.com/"
}{  
   "id":2,
   "title":"Test Title 2",
   "url":"http://test2.com",
}

上面的JSON输出不是有效的JSON,因为它需要是对象,需要用数组[]分隔。我怎样才能做到这一点?

EN

回答 2

Stack Overflow用户

发布于 2016-01-05 15:29:32

在尝试将其转换为JSON字符串之前,您应该构建他完整的数组。而不是像你所做的那样,逐个输出每一次发生。

就这样做吧

代码语言:javascript
运行
复制
$jsonarray = array();

for ($x = 1; $x <= 2; $x++) {
    $jsonarray[] = array( 'id' => $x, 
                          'title' => $title,
                          'url' => $url);

}
echo json_encode($jsonarray, JSON_UNESCAPED_SLASHES);
票数 0
EN

Stack Overflow用户

发布于 2017-10-20 19:57:48

创建一个数组

代码语言:javascript
运行
复制
for ($x = 1; $x <= 2; $x++) {

$jsonarray[] = array(
                 'id' => $x, 
                 'title' => $title,
                 'url' => $url,
               );
}

echo json_encode($jsonarray, JSON_UNESCAPED_SLASHES);
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34615102

复制
相关文章

相似问题

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